Selenium IDE:查找特定文本并按下按钮

时间:2017-05-30 08:39:56

标签: selenium selenium-ide

我有一个ul的列表,其中的li看起来像:

<li class="list-group-item operator">
            <div class="pull-right">
                <a href="/index.php?page=excursion_transport&amp;sub_page=operators&amp;mode=edit&amp;id=10" class="tooltip-hook" title="" data-original-title="Rediger operatøren">
                    <span class="fa fa-pencil fa-fw"></span>
                </a>
                <span class="text-muted tooltip-hook" title="" data-original-title="Operatøren kan ikke slettes da den har transportmidler.">
                    <span class="fa fa-trash fa-fw"></span>
                </span>
            </div>
            <a href="/index.php?page=excursion_transport&amp;sub_page=operators&amp;mode=edit&amp;id=10">Ice Cap Tours</a>
        </li>

我如何使用Selenium IDE查找文本&#34; Ice Cap Tours&#34;并同时按下&#34; span class =&#39; fa-pencil&#39;&#34;?

中的铅笔

3 个答案:

答案 0 :(得分:0)

使用clickclickAndWait命令,在目标中,您可以将xpath写为//a[text()='Ice Cap Tours']//preceding-sibling::div/a[@class='fa-pencil']

答案 1 :(得分:0)

如果您希望与他们互动,则需要以下定位器

//a[contains(text(),'Ice Cap Tours')]//..

//span[contains(@class, 'fa-pencil')]

第一个将只查找包含您所追求的文本的范围,并且“// ..”导航到父元素(a标记)以单击链接

第二个将查找类包含“fa-pencil”的范围,您可能遇到了其他建议定位器的问题,因为他们一直在寻找类的完全匹配,而不仅仅是一个类包含那个

答案 2 :(得分:0)

您可以尝试下面的xpath:

//a[normalize-space()='Ice Cap Tours']/preceding-sibling::div/a/span[contains(@class,'fa-pencil')]

以下是解释:

//a[normalize-space()='Ice Cap Tours']

这会找到包含文字Ice Cap Tours

的锚标记
/preceding-sibling::div

用于导航以找到a标记的前一个兄弟节点。在您的情况下,div位于a标记

的兄弟之前
div/a/span[contains(@class,'fa-pencil')]

找到具有班级名称span

pencil