У меня есть два класса (класс 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. Я не хочу, чтобы такое поведение было для «Дано», «Тогда» и «Когда». Есть ли способ исправить это? Я попытался поместить два класса в разные пространства имен, и это тоже не сработало.
Кроме того, могу ли я неправильно использовать SpecFlow, желая, чтобы каждый «данный» был независимым, если я помещаю их в отдельные классы?