Как удалить исходные данные в SpecFlow


Возможно, этот вопрос уже поднимался, возможно, это глупый вопрос.

В любом случае, я изучал SpecFlow и задавался вопросом, как я могу удалить свои исходные данные для этой функции. Эти исходные данные используются совместно в различных сценариях. Есть ли элегантный способ сделать это? Возможно, возможность впрыснуть событие, когда testRunner.OnFeatureEnd () в вызываемом?

1 6

1 ответ:

Можно использовать крючки.

Хуки-это методы, которые выполняются в определенное время во время выполнения функций корнишона.

Существует несколько крючков для различных событий во время выполнения.

В SpecFlow вы определяете крючки в ваших классах [Binding] с помощью специального атрибута. Доступны следующие крючки:

[BeforeTestRun], [AfterTestRun], [Перед Смертью], [После Смерти] [Before Scenario], [AfterScenario], [BeforeScenarioBlock], [Афтерскенариоблок], [Before Step], [AfterStep]

Примеры:

Https://github.com/techtalk/SpecFlow-Examples/blob/master/ASP.NET-MVC/BookShop/BookShop.AcceptanceTests.Selenium/StepDefinitions/BookSteps.cs

Https://github.com/techtalk/SpecFlow/blob/master/Tests/FeatureTests/BeforeAfterHooks/BeforeAfterHooksSteps.cs