Я пытаюсь гарантировать, что параметр не может быть пустым, добавив оператор assert в начале метода.Unit Testing AssertError в JUnit
При тестировании модулей я пытаюсь объявить, что ожидается AssertError, но он по-прежнему распознается как неудавшийся тест, хотя его поведение является правильным (AssertError получает бросок).
class ExampleTest {
@Test(expected=AssertError.class)
public void testAssertFails() {
assert 0 == 1;
}
}
Зачем используя 'assert' ключевое слово в модульном тесте, когда JUnit имеет целую кучу' методов assertXYZ' для этой самой задачи? – skaffman
@ skaffman: Я думаю, что предполагается, что проверенный код будет использовать 'assert', модульный тест в вопросе предназначен только для демонстрации. – Grundlefleck
@Allain: хотя указанный код не имеет такой же проблемы, это может быть полезно: http://stackoverflow.com/questions/395317/cause-of-an-unexpected-behaviour-using-junit- 4s ожидалось, исключение-механизм – Grundlefleck