我想使用黄瓜测试我的Rails应用程序的用户的年龄。功能定义看起来有点像。
Scenario: Successful calculation of age
Given I set my date of birth to "1987-07-15"
Then my age should be "22"
以上功能定义每年都会失败,因为用户年龄每年会增加一个。
一种解决方案可能是将出生日期动态设置为22.years.ago。但我不知道如何在Gherkin(黄瓜特征定义语言)中这样做。
对此有何看法?
答案 0 :(得分:4)
我会添加另一个类似于此
的给定条件Scenario: Successful calculation of age
Given I set my date of birth to "1987-07-15" And the Date is "15/07/2010"
Then my age should be "22"
答案 1 :(得分:2)
你可以写
Scenario: Successful calculation of age
Given I set my date of birth to "22" years ago
Then my age should be "22"
根据前22个来自行进行日期转换(例如,将测试方法的Fixnum参数替换为日期)。但说实话,我可能会选择Iain的方法。