在Specflow中使用Feature文件中的钩子

时间:2012-11-08 08:56:49

标签: background hook specflow scenarios

让我在TestRun,Feature,Scenario或Step级别执行某些操作。我知道我们可以使用Hooks。我想知道的是当我编写规范时,如何在功能文件中写入这些内容。

根据我的理解,我可以使用Backgroud来编写在所有场景之前在该功能中运行的常见内容。但是它建议我们不应该在Backgroud部分列出长列表。另外,如果我有一些常见的testrun或多个功能,我可以使用标签对它们进行分组,是否有任何语法可以用来写这个。

1 个答案:

答案 0 :(得分:4)

钩子实现不能在Gherkin的特征文件中表示,它们必须在步骤实现文件中实现:

使用标签@foo标记方案和/或功能,并在使用[Binding]属性修饰的某个类中,使用hook属性注释方法,如[BeforeTestRun(“foo”)]。

可以找到更多信息和可用的钩子in the specflow wiki

如果您担心在后台有一长串步骤,可能步骤过于冗长,您可以考虑将它们合并为一个步骤。如果你需要为测试运行中的所有测试做一些事情,也许在功能中提及它并不重要,所以它可以进入如上所述的步骤实现文件。