Ruby PageObject/Cumber字符串输入不正确
在我的场景大纲中,我有以下内容Ruby PageObject/Cumber字符串输入不正确,ruby,cucumber,page-object-gem,Ruby,Cucumber,Page Object Gem,在我的场景大纲中,我有以下内容 Examples: | user | password | from | to | amount | date | message | | joel10 | lolpw12 | bankA | bankB | $100 | 1/30/2015 | Transfer Success. | And(/^the user inputs
Examples:
| user | password | from | to | amount | date | message |
| joel10 | lolpw12 | bankA | bankB | $100 | 1/30/2015 | Transfer Success. |
And(/^the user inputs fields (.*), (.*), (.*)$/) do |from, to, amount|
on(TransferPage).from = /#{from}/
on(TransferPage).to = /#{to}/
on(TransferPage).amount = /#{amount}/
on(TransferPage).date = /#{date}/
end
在我的步骤定义中,我有以下内容
Examples:
| user | password | from | to | amount | date | message |
| joel10 | lolpw12 | bankA | bankB | $100 | 1/30/2015 | Transfer Success. |
And(/^the user inputs fields (.*), (.*), (.*)$/) do |from, to, amount|
on(TransferPage).from = /#{from}/
on(TransferPage).to = /#{to}/
on(TransferPage).amount = /#{amount}/
on(TransferPage).date = /#{date}/
end
表中的FROM、TO和AMOUNT都是正确的,但当它输入日期时,就会显示出来(?-mix:1/30/2015)
为什么会发生这种情况以及如何修复?当您执行/{date}/
时,您将获取解析步骤定义返回的值,然后将其转换为正则表达式:
/#{date}/.class
#=> Regexp
您可能希望将该值保留为其原始字符串格式:
on(TransferPage).date = date
你能添加步骤定义的代码吗:这会有帮助的。上面是有问题的步骤定义,除此之外我没有太多。它只是将表中的数据输入到输入字段中。我很惊讶其他输入没有这个问题,因为它们也被转换为regexp。日期实际上来自哪里?它不是来自您的步骤定义名称,因为它只从(TransferPage)收集、到和金额。是的。日期=工作日期!非常感谢您的帮助:)