如何在我的 Cucumber / Capybara 步骤定义 (Rails 3) 中进行 xpath 正则表达式搜索?
我有一个场景,可以验证我刚刚上传的图像是否存在于下一页上。
下面这个效果很好,除了我有一个基于listing_id的可变文件夹结构。如何在此处使用正则表达式将 image 仅与文件名而不是整个网址匹配?
Then /^I should see the image "(.+)"$/ do |image|
page.should have_xpath("//img[@src=\"/public/images/#{image}\"]")
end
I have a Scenario that validates that the image I just uploaded exists on the next page.
This below works great, except that I have a variable folder structure based on the listing_id. How can I use regex here to match image to only the filename instead of the entire url?
Then /^I should see the image "(.+)"$/ do |image|
page.should have_xpath("//img[@src=\"/public/images/#{image}\"]")
end
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
尝试
page.should have_xpath("//img[contains(@src, \"#{image}\")]")
,它将匹配任何img
其 < code>src 包含您的文件名。Try
page.should have_xpath("//img[contains(@src, \"#{image}\")]")
, which will match anyimg
whosesrc
contains your filename.如果您可以选择,那么在这种情况下使用 css 选择器会更简洁:
请注意“
href$
”末尾的“$
”以表示与末尾匹配字符串的。If you have the option then using a css selector is more concise in this case:
Note the '
$
' on then end of 'href$
' to denote matching against the end of the string.