Есть ли способ выйти из всего набора тестов, если соблюдается условие в аннотации @BeforeSuite? Может быть, способ вызвать @AfterSuite и обойти весь тест?
Я делаю вызов базы данных в @BeforeSuite. Если запрос возвращает какие-либо результаты, я отправляю электронное письмо и теперь хочу убить весь набор тестов.
Я пробовал System.exit(1);
и org.testng.Assert.fail("There are unpaid invoices");
, но ни один из них не прерывает работу всего пакета. Мои сценарии настроены для параллельного запуска классов, и когда я запускаю тест из файла test.xml, каждый класс пытается запуститься и открывает окно, а затем немедленно закрывает его.
К вашему сведению, драйверы не создаются до @BeforeClass или @BeforeMethod (в зависимости от переключателя, который я создал для параллельных методов или классов). Так что на самом деле никогда не должно быть даже попыток открыть окно браузера.