SpecFlow StepArgumentTransformation
SpecFlow StepArgumentTransformation
我将小黄瓜步骤定义为:
When I select '<currentuser>'
在我的步骤定义中,我想捕获此参数并将其替换为会话中的参数。
我想使用
StepArgumentTransformation
这里
我可以使用什么 RegEx 表达式来捕获 <
和 >
之间的所有内容
谢谢
如果我正确理解了您的要求,我认为您无法为所欲为。原因是没有从一种类型到另一种类型的转换,它是一个字符串输入到一个字符串输出,您将无法通过步进参数转换来完成。我想你有几个选择。 1 只是在每个步骤中查找会话中的值。另一种是创建一个可以在转换中使用的 class 。像这样:
public class SessionVariable
{
...stuff
}
[StepArgumentTransformation]
public SessionVaraible TransformToSessionVariable(string input)
{
..create session variable from input
}
然后让您的步骤方法接受类型为 SessionVaraible
的变量
[When("I select '(.*)'")]
public void WhenISelect(SessionVaraible sessionVariable)
{
...whatever
}
我将小黄瓜步骤定义为:
When I select '<currentuser>'
在我的步骤定义中,我想捕获此参数并将其替换为会话中的参数。 我想使用
StepArgumentTransformation
这里
我可以使用什么 RegEx 表达式来捕获 <
和 >
谢谢
如果我正确理解了您的要求,我认为您无法为所欲为。原因是没有从一种类型到另一种类型的转换,它是一个字符串输入到一个字符串输出,您将无法通过步进参数转换来完成。我想你有几个选择。 1 只是在每个步骤中查找会话中的值。另一种是创建一个可以在转换中使用的 class 。像这样:
public class SessionVariable
{
...stuff
}
[StepArgumentTransformation]
public SessionVaraible TransformToSessionVariable(string input)
{
..create session variable from input
}
然后让您的步骤方法接受类型为 SessionVaraible
[When("I select '(.*)'")]
public void WhenISelect(SessionVaraible sessionVariable)
{
...whatever
}