Выполнение огурца останавливается для выполнения, если начальный @then завершается неудачей для автоматизации - PullRequest
1 голос
/ 20 февраля 2020

Я использую фреймворк для тестирования. У меня три условия @then, если первое условие @then не выполняется, оно не переходит во второе условие @then. Как я могу преодолеть?

   @Then("^I check first result$")
public void verifyFirstResult() {
    Assert.assertEquals(results.get("first"), true);    --> This gets failed as its returning false.    
}


@Then("^I check second result$")
public void verifySecondResult() {
    Assert.assertEquals(results.get("second"), true);  --> This is not even triggering, the execution stops at the first method itself 
}


 @Then("^I check third result$")
public void verifyThirdResult() {
    Assert.assertEquals(results.get("third"), true);  
}

Как я могу преодолеть эту проблему?

Ответы [ 2 ]

0 голосов
/ 23 февраля 2020

Не могли бы вы уточнить вопрос лучше? 1) Вы пытаетесь проверить три условия одновременно, чтобы тест не прошел, если какое-либо из них (независимо от того, какое из них) не выполнено? 2) Или вам интересно узнать, какое конкретное условие не удалось в случае ошибки?

0 голосов
/ 20 февраля 2020

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

Если вы хотите проверить несколько условий за один Then шаг, вы можете создать «составной» шаг, который проверяет несколько условий, что приведет к провалу этого шага. Обычно это делается с помощью таблицы данных:

Then the results should be:
    | Field  | Value |
    | First  | true  |
    | Second | true  |
    | Third  | true  |

Ссылки:

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...