Selenium IDE:定位包含特定字符串的span元素的第二个出现

时间:2015-05-12 20:55:23

标签: css selenium selenium-ide

使用Selenium IDE创建测试脚本。我正在为Magento电子商务平台创建扩展程序。我需要定位一个包含字符串" Dashboard"的子菜单项。这些菜单项包含在span元素中。通常我会使用以下内容:

css=span:contains('Dashboard')

但是Magento默认包含了1个这样的实例。我需要一种方法来指定包含单词 Dashboard 的span元素的第二个(或最后一个)出现。我必须使用像#" last"这样的相对术语。为了选择它,因为Magento菜单在安装和版本之间存在差异。这意味着我不能使用第n个选择器或类似的东西。任何帮助将不胜感激。

呈现可用于定位的HTML:

<li class="  parent level0">
<a href="#" class=""><span>My Menu</span></a>
<ul >
<li  class="  last level1"> <a href="/link"   class=""><span>Dashboard</span></a>

以我的特定范围为目标的口头方式:

&#34;首先包含文字&#39;信息中心&#39;在包含文本&#39;我的菜单&#39;&#34;

的范围之后

1 个答案:

答案 0 :(得分:0)

Do you mean something like:

stream()

OR go for the last element only:

elements = driver.find_elements_by_css_selector("...")
count = len(elements)
lastElement = elements[count - 1]