我从 SpecFlow 的世界开始,我遇到了我的第一个问题。在保持我的代码干燥方面,我想做以下事情:
有两种情况:
Given I am on a product page
And myfield equals todays date
Then...
Given I am on a product page
And myfield equals todays date plus 4 days
Then...
我希望使用以下步骤定义来涵盖我的 And 子句的两种变体:
[Given(@"myfield equals todays date(?: (plus|minus) (\d+) days)?")]
public void MyfieldEqualsTodaysDate(string direction, int? days)
{
//do stuff
}
但是,当 SpecFlow 尝试解析 int 时,我不断收到异常?参数。我检查了正则表达式,它肯定会按预期解析场景。我知道我可以像方法重载等这样粗略的东西,我只是想知道 SpecFlow 是否支持默认参数值的想法,或者确实是另一种实现相同效果的方法。
非常感谢