无法使用xpath选择菜单项[在Xpath检查器中验证,但是webdriver无法找到它]

时间:2011-12-20 13:19:54

标签: selenium webdriver

我正在尝试选择一个菜单项...虽然xpath在Xpath检查程序中验证得很好,但它无法在WebDriver中运行...有人可以帮忙吗?

我得无法找到元素:{“method”:“xpath”,“selector”:“// a [contains(text(),'Start Loan Process')]}}

HMTL looks something like this
<div class="bd">
<ul class="first-of-type">
<li id="yui-gen7" class="yuimenuitem first-of-type" groupindex="0" index="0">
<li id="yui-gen8" class="yuimenuitem" groupindex="0" index="1">
<li id="yui-gen9" class="yuimenuitem" groupindex="0" index="2">
<li id="yui-gen10" class="yuimenuitem" groupindex="0" index="3">
<li id="yui-gen11" class="yuimenuitem" groupindex="0" index="4">
<a class="yuimenuitemlabel" href="#">Start Loan Process</a>

2 个答案:

答案 0 :(得分:2)

我使用xpath的Text()部分时运气不佳。我宁愿使用.Text(C#)或.getText()(java)方法。

这就是我在c#中写这个的方法: driver.FindElement(By.Xpath(".//*/a").Text.Contains("Start Loan Process");

xpath部分当然是有争议的。它也可能是:".//div/li/a"。你可以使用你想要的东西。

答案 1 :(得分:0)

另一方面,您也可以尝试使用findElementsBy(By.classname(“yuimenuitemlabel”)) 将它们添加到Web元素列表中,然后使用webelement.getText()方法对其进行过滤。