UISpec4j, как утверждать, что диалог модальной ошибки не отображается? - PullRequest
3 голосов
/ 07 февраля 2012

Я пишу некоторые функциональные тесты для приложения Swing с UISpec4j.

Есть несколько полей для заполнения и кнопка для сохранения. В зависимости от комбинации заполненных полей, может быть диалоговым окном модальной ошибки, отображаемым при нажатии кнопки сохранения.

Я не хочу дублировать логику для отображения диалогового окна с ошибкой в ​​моих тестовых примерах, просто утверждаю, что диалоговое окно с ошибкой не отображалось при нажатии кнопки сохранения.

Можно ли сделать это менее замысловато, чем вызывать WindowInterceptor.getModalDialog () и перехватывать AssertionError?

1 Ответ

0 голосов
/ 08 июня 2012

В зависимости от того, как ваш код организован в приложении, вы можете включить Mockito или его эквивалент и убедиться, что метод, отвечающий за отображение диалогового окна, никогда не вызывается. Из Mockito API («Убедившись, что взаимодействие никогда не происходило в макете»), вы можете добавить что-то вроде:

//verify that method was never called on a mock
verify(mockOne, never()).add("two");

Другим подходом было бы заменить класс диалога вашей собственной оберткой и проверить, что метод show никогда не вызывается.

...