在Rspec Capybara测试中,我想检查是否存在 H4 , H5 ,..., H9 选择器。
我希望以下解决方案:
visit "/"
expect(page).not_to have_css(/(h|H)\[4-9]d/)
但由于Nokogiri解析而失败
我也注意到了:
has_css?("h1")
# is not equal to
has_css?("H1")
答案 0 :(得分:1)
一些替代方案:
visit "/"
expect(page).not_to have_css("h1,H1,h2,H2,h3,H3,h4,H4,h5,H5,h6,H6,h7,H7,h8,H8,h9,H9")
我使用以下代码片段来生成那个丑陋的选择器:
(1..9).map { |n| "h#{n.to_s},H#{n.to_s}" }.join(',')
How can I create a nokogiri case insensitive Xpath selector?
Nokogumbo是一个HTML5解析器,它创建小写元素名称。