我使用以下规格与MiniTest::Spec
和Capybara
:水豚field.has_css?匹配器
find_field('Email').must_have_css('[autofocus]')
检查,如果所谓的“电子邮件”现场有autofocus
属性。该doc说以下内容:?
has_css(路径,选择= {})
检查,如果给定的CSS选择器的页面或当前节点上。
据我所知,字段'电子邮件'是一个节点,因此调用must_have_css
应该肯定工作!我做错了什么?
虽然我理解@jnicklas的论点,认为'''has_css?'''应该只适用于后代,那么拥有'''''''''匹配器(类似于[jQuery.is()] http://api.jquery.com/is/))适用于当前元素。 – gmcnaughton
请参阅https://gist.github.com/3976287了解添加'''match_selector?''和'''match_css?'''matcher的猴子补丁。原始代码可以写成'''find_field('Email')。must_match_css('[autofocus]')'''(未经测试...) – gmcnaughton
不错!谢谢:) –