Specflow - 对任何关键字使用相同的步骤定义
Specflow - Using the same step def for any keyword
如何在功能文件中使用步骤定义,其中起始关键字可以是 Given/When/Then
示例:
专题文件
Given I do something
When I do something else
Then blah blah
And I do something else
我如何只编写 1 步定义来处理 2 x“我做其他事情”。据我所知,我现在必须编写 2 个相同的步骤定义来处理这个
目前我必须在 Step Def 文件中执行此操作
[When(@"I do something else"]
public blah()
{
do something
}
[Then(@"I do something else"]
public blah2()
{
do something
}
您可以将多个属性放在同一个方法上。
所以在你的情况下它看起来像这样:
[When(@"I do something else"]
[Then(@"I do something else"]
public void blah()
{
// do something
}
如果您希望一个步骤适用于所有 3 个部分 (Given/When/Then),您可以使用 StepDefinitionAttribute
.
在那种情况下它看起来像这样:
[StepDefinition(@"I do something else"]
public void blah()
{
// do something
}
如何在功能文件中使用步骤定义,其中起始关键字可以是 Given/When/Then
示例:
专题文件
Given I do something
When I do something else
Then blah blah
And I do something else
我如何只编写 1 步定义来处理 2 x“我做其他事情”。据我所知,我现在必须编写 2 个相同的步骤定义来处理这个
目前我必须在 Step Def 文件中执行此操作
[When(@"I do something else"]
public blah()
{
do something
}
[Then(@"I do something else"]
public blah2()
{
do something
}
您可以将多个属性放在同一个方法上。
所以在你的情况下它看起来像这样:
[When(@"I do something else"]
[Then(@"I do something else"]
public void blah()
{
// do something
}
如果您希望一个步骤适用于所有 3 个部分 (Given/When/Then),您可以使用 StepDefinitionAttribute
.
在那种情况下它看起来像这样:
[StepDefinition(@"I do something else"]
public void blah()
{
// do something
}