SpecFlow Повторно используемые определения шагов - PullRequest
13 голосов
/ 08 марта 2011

Есть ли способ заставить SpecFlow повторно использовать определения шагов?

В других инструментах я использовал базовый класс GivenWhenThen, который содержит такие методы, как

WhenAnOrderIsCreated - этот элемент защищенного ордера используется для наследования классов.

Просто не могу заставить это работать со SpecFlow (не похоже на наследование)

Есть ли способ разделить шаги между функциями?

Большое спасибо

1 Ответ

26 голосов
/ 08 марта 2011

Почему да, это возможно - проверьте шаги вызова из функции шага (https://specflow.org/documentation/Calling-Steps-from-Step-Definitions/)

Короче говоря, вы создаете класс определения шага, который наследуется от шагов, как это:

[Binding]
public class CallingStepsFromStepDefinitionSteps : Steps
{}

И тогда вы можете просто назвать другие шаги, как это:

[Given(@"I am logged in")]
public void GivenIAmLoggedIn()
{
     Given("I am on the index page");
     When("I enter my unsername nad password");
     And("I click the login button");
     incStepCount();
}

Надеюсь, я правильно понял ваш вопрос и что это был ответ на него

...