Я пытаюсь автоматизировать веб-страницу с помощью Selenium Webdriver + Java + TestNG Framework.
Assert.assertEquals(rs.totalarea(), "400");
Assert.assertEquals(rs.totalgallons(), "1");
Как я могу выполнить второй оператор утверждения, даже если первый терпит неудачу. блок try catch у меня не работает.
Спасибо




Вы можете использовать мягкое утверждение. Мягкие утверждения — это тип утверждений, которые не вызывают исключение, когда утверждение терпит неудачу, и будут продолжаться со следующего шага после утверждения оператора. Посмотрите это
Существует два типа утверждений:
Общее утверждение - Hard Assert:
Hard Assert: немедленно выдает исключение AssertException, если оператор утверждения терпит неудачу и набор тестов продолжается со следующим тестом. Hard Assert помечает тестовый метод как неудачный, если условие утверждения не выполняется, и оставшиеся шаги внутри метода будут прерваны.
Мягкий актив: не выдает исключение, когда утверждение терпит неудачу, и переходите к следующему шагу после утверждения утверждения. Сначала он собирает ошибки, а затем генерирует исключения при использовании assertAll().
Вот как вы используете мягкое утверждение:
SoftAssert softAssertion= new SoftAssert();
softAssertion.assertTrue(false);
softAssertion.assertAll();
Он выдает ошибку AssertionError, которую вы должны отловить. В противном случае кажется, что вы просто выполняете
expected.equals(actual) && actual.equals(expected), поэтому вы можете сделать это вручную и сохранить в двух логических значениях, которые вы можете проверить. github.com/cbeust/testng/blob/master/src/main/java/org/testng/…