Selenium IDE:查找特定文本并按下按钮
我有一份ul中的li列表,其中li看起来像:Selenium IDE:查找特定文本并按下按钮,selenium,selenium-ide,Selenium,Selenium Ide,我有一份ul中的li列表,其中li看起来像: <li class="list-group-item operator"> <div class="pull-right"> <a href="/index.php?page=excursion_transport&sub_page=operators&mode=edit&id=10" class="tooltip-h
<li class="list-group-item operator">
<div class="pull-right">
<a href="/index.php?page=excursion_transport&sub_page=operators&mode=edit&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&sub_page=operators&mode=edit&id=10">Ice Cap Tours</a>
</li>
如何使用Selenium IDE查找文本“冰帽之旅”,同时按下“fa-pencil”中出现的铅笔?使用
单击
或单击并等待
命令,在目标中您可以将xpath编写为//a[text()='Ice Cap Tours']//前面的兄弟姐妹::div/a[@class='fa-pencil']
使用单击
或单击并等待
命令,在Target中,您可以将xpath编写为//a[text()='Ice Cap Tours']//previous sibling::div/a[@class='fa-pencil']
如果您希望与他们交互,您需要以下定位器
//a[contains(text(),'Ice Cap Tours')]//..
//span[contains(@class, 'fa-pencil')]
第一个将只查找包含您要查找的文本的span,而“/”将导航到父元素(a标记)以单击链接
第二个将查找包含“fa pencil”的span类,您可能与其他建议的定位器有问题,因为它们将查找与该类完全匹配的定位器,而不仅仅是包含该定位器的类如果您希望与它们交互,则需要以下定位器
//a[contains(text(),'Ice Cap Tours')]//..
//span[contains(@class, 'fa-pencil')]
第一个将只查找包含您要查找的文本的span,而“/”将导航到父元素(a标记)以单击链接
第二个将查找包含“fa pencil”的span类,您可能与其他建议的定位器有问题,因为它们将查找该类的精确匹配,而不仅仅是包含该类的类。您可以尝试以下xpath:
//a[normalize-space()='Ice Cap Tours']/preceding-sibling::div/a/span[contains(@class,'fa-pencil')]
以下是解释:
//a[normalize-space()='Ice Cap Tours']
这将定位您的锚定标签,其中包含文本冰盖之旅
/preceding-sibling::div
用于导航以定位标记的前一个同级节点。在您的情况下,div
是a
标记的前一个兄弟
div/a/span[contains(@class,'fa-pencil')]
将找到您的span
,它具有类名pencil
您可以尝试以下xpath:
//a[normalize-space()='Ice Cap Tours']/preceding-sibling::div/a/span[contains(@class,'fa-pencil')]
以下是解释:
//a[normalize-space()='Ice Cap Tours']
这将定位您的锚定标签,其中包含文本冰盖之旅
/preceding-sibling::div
用于导航以定位标记的前一个同级节点。在您的情况下,div
是a
标记的前一个兄弟
div/a/span[contains(@class,'fa-pencil')]
将找到你的span
,它的类名为pencil
显示你已经尝试过的代码我已经尝试过“VerifyText”然后单击,但是dit不起作用。显示代码你已经尝试过“VerifyText”然后单击,但是dit不起作用。嗨,Peter,我已经用原始代码编辑了我的帖子,那我怎么做呢?我原以为一个例子比真正的代码更简单,但我无法理解。嗨,再次@peter,它失败了…我在日志中收到了以下内容:[error]元素//a[text()='Ice Cap Tours']//前面的兄弟姐妹::div/a[@class='fa-pencil']not found首先尝试使用//a[text()='Ice Cap Tours']定位元素//前面的兄弟姐妹::div
。我刚刚试过://a[contains(text(),'icecap Tours'),第一部分有效,第二部分仍然失败。//a[contains(text(),'icecap Tours')]//前面的兄弟姐妹姐妹::div/a
尝试通过逐个添加标记来定位元素。并确保它是页面上唯一的元素,否则它将定位其他元素,在这种情况下xpath将失败。嗨,Peter,我已经用原始代码编辑了我的文章,我该怎么做?我原以为一个例子比真正的代码更简单,但我无法理解。嗨,再次@peter,它失败了…我在日志中收到了以下内容:[error]元素//a[text()='Ice Cap Tours']//前面的兄弟姐妹::div/a[@class='fa-pencil']not found首先尝试使用//a[text()='Ice Cap Tours']定位元素//前面的兄弟姐妹::div
。我刚刚试过://a[contains(text(),'icecap Tours'),第一部分有效,第二部分仍然失败。//a[contains(text(),'icecap Tours')]//前面的兄弟姐妹姐妹::div/a
尝试通过逐个添加标记来定位元素。并确保它是页面上唯一的元素,否则它将定位其他元素,在这种情况下xpath将失败。谢谢您的回答。这两行,应该在“Target”中写成一行吗?比如://a[contains(text(),'Ice Cap Tours')]/../..//span[contains(@class,'fa pencil')]谢谢你的回答。这两行,应该在“Target”中写为一行吗?比如://a[contains(text(),'Ice Cap Tours')]/../..//span[contains(@class,'fa pencil')]