以下工作如预期:
within('h2',text: 'foo') do
should have_content 'bar'
end
我试图检查父元素,使用find(:xpath,’..’)
一旦你找到一个元素,如何应用.find(:xpath,’..’),然后检查该元素内的东西?
当您使用XPath定位器内部时,应该从它开始. (如果没有开始,
搜索不是在.myclass内部,而是在整个文档内).
例如.:
within('.myclass') do
find(:xpath,'./div')
end
要么:
find('.myclass').find(:xpath,'./div')
@ BSeven答案的代码可以写成一行:
expect(find("//h2[text()='foo']/..")).to have_text('bar')
要么
expect(page).to have_xpath("//h2[.='foo']/..",text: 'bar')