我有两个类(A 类和 B 类)都标有 [Binding]。目前我正在为每个功能使用一个类。A 类和 B 类都有一个如下所示的步骤:
[Given(@"an employee (.*) (.*) is a (.*) at (.*)")]
public void GivenAnEmployeeIsAAt(string firstName, string lastName, string role, string businessUnitName)
当我为 A 类中定义的功能运行场景,并且测试运行程序执行上述步骤时,B 类中的匹配步骤将被执行。
“步骤”也是全球性的吗?我以为只有“钩子”方法是全局的,即BeforeScenario,AfterScenario。我不希望“Given”、“Then”和“When”出现这种行为。有没有什么办法解决这一问题?我尝试将这两个类放在不同的名称空间中,但这也不起作用。
另外,如果我将每个“Given”放在单独的类中,我是否可能会通过希望每个“Given”独立来滥用 SpecFlow?