我正在开发一个rails应用程序来自我教授BDD和测试。使用黄瓜+ webrat + rspec,在铁路视频播放之后。 在这个应用程序中,测验有很多问题。我正在测试的视图应该将问题呈现两次且不连续。 (此处不测试连续性) 我有一个黄瓜场景旨在检查这个
Given quiz titled "Pearl Jam" has questions named "Corduroy, Dissident"
When I go to the experiment page for quiz titled "Pearl Jam"
Then I should see "Corduroy" twice
And I should see "Dissident" twice
我的步骤定义如下:
Then /^I should see "([^\"]*)" twice$/ do |text|
regexp = Regexp.new(text + "(.+)" + text)
response.should contain(regexp)
end
我用一个工具测试了正则表达式,它似乎有效,但测试在黄瓜上失败了 我搜索了一些文档,但webrat唯一的文档是API文档;我无法将响应显示为文本。 有什么建议吗?
答案 0 :(得分:6)
您是否尝试过回复。正文
Then /^I should see "([^\"]*)" twice$/ do |text|
regexp = Regexp.new(text + "(.+)" + text)
response.body.should contain(regexp)
end
答案 1 :(得分:1)
我不得不修改达米安的答案,让它跨线工作。
Then /^I should see "([^\"]*)" twice$/ do |text|
regexp = Regexp.new(text + "(.+)" + text, Regexp::MULTILINE)
response.body.should contain(regexp)
end