Как выполнить модульное тестирование настраиваемого утверждения?

Я пишу свой собственный JUnit Assert? Как мне это проверить?

Я знаю, как кормить его чем-то, что пройдет, и чем-то, что приведет к сбою, но как мне написать тест JUnit для этих вещей?

Пользовательское утверждение будет выглядеть примерно так:

public static void assertSomething() {
    if (!something()) {
        fail("Expected something, but ...");
    }
}

Как я могу поймать эту неудачу?


person Paul Croarkin    schedule 23.03.2011    source источник


Ответы (1)


fail() выдает junit.framework.AssertionFailedError, который вы можете поймать в модульном тесте вашего метода утверждения, если хотите.

Пример:

@Test(expected = AssertionFailedError.class)
public void testMyAssertFails() {
    assertSomething("valueThatWillFail");
}

@Test
public void testMyAssertPasses() {
    assertSomething("valueThatPasses");
    //if you reach this line, no failure was thrown
}
person matt b    schedule 23.03.2011