Thucydides - тест продолжается после сбоя утверждения в @Step

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

Можно ли как-нибудь остановить тест, если в @Step произошла ошибка подтверждения?

@Test
public void test() {
    ....
    steps.step1();

    System.out.println("test should not reach here");
    assertTrue(false);
}

@Step
public void step1() {
    assertTrue(false);
}

Пробовал запускать тесты из моей IDE и maven. (используя ThucydidesRunner)

2 ответа

Решение

Оказывается, тесты не прекращаются, вот ответ, который я получил от создателей Фукидида:

"Тест не может быть остановлен немедленно, или было бы невозможно узнать, какие шаги не были выполнены, так что, да, это по замыслу. Они записывают первую ошибку утверждения, а затем запускают шаги в режиме" пробного запуска " (звонки через WebDriver не производятся), но это самое большее, что он может гарантировать ".

Попробуйте проверить это: http://thucydides.info/docs/thucydides/_creating_a_new_thucydides_project.html

короче говоря, пошагово:

import net.thucydides.core.annotations.Step;
import static org.fest.assertions.Assertions.assertThat;
import static org.hamcrest.Matchers.is;

public class EndUserSteps extends Scenario Steps {
@Step
public void someStep() {
   assertThat(true, is(false));
  }
}
Другие вопросы по тегам