这可能已经提出,也许是一个愚蠢的问题。
无论如何,我一直在研究 SpecFlow 并想知道如何删除该功能的种子数据。这些种子数据在不同的场景中共享。有没有一种优雅的方式来做到这一点?也许在调用 testRunner.OnFeatureEnd() 时注入事件的能力?
这可能已经提出,也许是一个愚蠢的问题。
无论如何,我一直在研究 SpecFlow 并想知道如何删除该功能的种子数据。这些种子数据在不同的场景中共享。有没有一种优雅的方式来做到这一点?也许在调用 testRunner.OnFeatureEnd() 时注入事件的能力?
您可以使用挂钩。
挂钩是在 Gherkin 功能执行期间的特定时间执行的方法。
在执行期间有几个用于不同事件的钩子。
在 SpecFlow 中,您可以在具有特殊属性的 [Binding] 类中定义挂钩。可以使用以下钩子:
[BeforeTestRun]、[AfterTestRun]、[BeforeFeature]、[AfterFeature] [BeforeScenario]、[AfterScenario]、[BeforeScenarioBlock]、[AfterScenarioBlock]、[BeforeStep]、[AfterStep]
例子: