【发布时间】:2014-06-24 10:57:32
【问题描述】:
在我的 CSS 中
<ul class="test1">
<li class="items">
<a class="sample">
<div class="itembox">
<div class="item_name">
<p>
Item_name_1
</p>
</div>
</div>
</a>
</li>
<li class="items">
<a class="sample">
<div class="itembox">
<div class="item_name">
<p>
Item_name_2
</p>
</div>
</div>
</a>
</li>
<li class="items"></li>
<li class="items"></li>
</ul>
如你所见,我所有的 li(s) 都有相同的班级,他们的孩子也有。 我想知道如何在我的 li 中单击全部。 如果我执行 page.find("ul[class='test'] > li[class='items'] > a[class='sample']).click,它会找到 4 个元素。
那么,我怎样才能通过使用他们在“ul > li > a > div > div > p”中的文本来点击“ul > li > a”来具体哪个?
类似,点击“ul > li > a”,其中“ul > li > a > div > div > p”, :text => “Item_name_1”
【问题讨论】:
-
在可能的情况下避免使用 HTML 选择器链的好主意,您将陷入与 css 作者经常落入的 DOM 结构紧密联系的同一个陷阱
标签: ruby-on-rails rspec selenium-webdriver cucumber capybara