Cucumber / JUnit - Как действовать, если тест не прошел внутри al oop? - PullRequest
0 голосов
/ 09 мая 2020

Добрый вечер,

Я исследовал часы, чтобы найти решение следующей проблемы: Я использую Eclipse, Cucumber, JUnit & Maven. Как можно получить один шаг теста, будет помечен как неудавшийся. У меня была возможность провалить весь сценарий с помощью try-catch и Assert.fail (), но ни одного случая внутри al oop.

Прикрепил часть моего кода:

Сценарий: затем выполнить вход на странице | 455xxxxxx10 | 4xx0 | | 455xxxxxx10 | 4xx0 | | 455xxxxxx10 | 4xx0 | | 455xxxxxx10 | 4xx0 | | 455xxxxxx10 | 4xx0 |

Вполне возможно, что одно число неверно, и тогда весь сценарий провалится? Было бы здорово отметить этот единственный случай как ошибку и снова выполнить l oop.

        List<String> credentials = dataTable.asList(String.class);
        driver.get("URL");
        sessionID = driver.manage().getCookieNamed("CookieName").toString();

        for (int a=0, b=1; a<credentials.size() & b<=credentials.size(); a+=2, b+=2)
        {
            driver.findElement(By.linkText("LOGIN")).click();
            wait = new WebDriverWait(driver, 60);
            wait.until(ExpectedConditions.visibilityOfElementLocated(By.xpath("/html/body/div[1]/header/nav/div/div/div/ul/li[2]/a/span")));```

Ответы [ 2 ]

1 голос
/ 09 мая 2020

Вы должны использовать схему сценария. Попробуйте следующее:

Feature: Login Feature - Verify if user is able to Login into the site.

Scenario Outline: Login as a authenticated user
 Given user is on homepage
 When user navigates to Login Page
 Then I enter Username as "<username>" and Password as "<password>"

Examples:
|username  |password|
|455xxxxx10|4xx0    |
|455xxxxx10|4xx0    | 

PS: Обратите внимание на ключевые слова. Вы не могли написать

 Feature: Login Feature
Verify if user is able to Login into the site

, потому что нет ключевого слова перед «Проверить, если пользователь ....»

1 голос
/ 09 мая 2020

Мне кажется, вам следует использовать схему сценария.

Scenario Outline: Then Execute Login on Page
Given: "<User>" logs into the page
|User        |
|455xxxxxxxxx|
|4xx0        |
|4xx0        |

Это будет запускать каждый тестовый сценарий для любого пользователя (или того, что вы используете для входа в систему. Я предположил, что это был пользователь) в качестве отдельный тест. Поэтому, если один из сценариев ios не работает. Вы сможете увидеть, какой из них.

...