Выполнение сценария, даже если один из шагов не выполнен - PullRequest
0 голосов
/ 14 февраля 2019

Ниже приведен обычный пример: если тест не пройден на шаге
, тогда я вижу Level2 MenuLinks. Пропускаются все последующие шаги.Я хотел бы знать, есть ли возможность продолжить выполнение других шагов?

Спасибо

Feature: Menu
    In order to check MenuLinks

Scenario Outline: Open a Page
    Given I have open the Page
    Given I see MenuLinks
    When I click on Level1 in MenuLinks
    Then I see Level2 MenuLinks
    And I go back to pagetemplate
    Given I see Level2 in MenuLinks
    When I click on Level2
    Then I see Level3 MenuLinks

1 Ответ

0 голосов
/ 15 февраля 2019

Я не уверен, почему вы хотели бы сделать это.При этом будет сложнее увидеть, что шаг Тогда не выполнен.Если это на самом деле не важно, почему вы проверяете это?
Но это один из способов подойти к этому, используя попытку try:

На вашем шаге Тогда я вижу Level2 MenuLinks

[Then(@"I see Level2 MenuLinks")]
public void ISeeLevel2MenuLinks()
{
  try 
  {
         Execute your test here
  }
  catch
  {
         NotifyMeOnFailure();
         //A method that will notify you that the step failed. 
         //Because in specflow it will show as succesfully passed 
  }

}

Кроме того, я бы советовал против подхода, который вы используете в своем посте.Было бы лучше создать два разных сценария.

Scenario: Check for level2 menu links
  Given I have open the Page
  And I see MenuLinks
  When I click on Level1 in MenuLinks
  Then I see Level2 MenuLinks

Scenario: Check for level3 menu links
  Given I have open the Page
  When I click on Level1
  And I click on Level2
  Then I see Level3 MenuLinks

Таким образом, намного легче быстро определить, где что-то пошло не так.

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