点击此网络应用中的“按钮”链接时,我遇到了麻烦。它定义如下:
<tr>
<td id="mainleftlinkzoneover" width="9" valign="top">
<td id="mainleftlinkzoneover" class="mainleftlinks" width="151" title="Online Training"> Online Training</td>
</tr>
注意没有名称或ID可供使用。谢谢!我试过通过Link Text点击它。不。我试过通过部分链接文字点击它。不。
不确定为什么那不起作用但我只做了一整天的Selenium。我成功登录了应用程序,所以事情正在发挥作用。如果我使用By.PartialLinkText它不会失败但它也不会点击链接。
WebElement OnlineTrainBtn = driver.findElement(By.partialLinkText("Training"));
OnlineTrainBtn.click();
我想我可能会留下Xpath或CssSelector,但我不知道如何编写搜索字符串。
非常感谢任何有关此问题的帮助,我还有十或十二个“按钮”可供处理。
答案 0 :(得分:1)
By.PartialLinkText
代码中的<a>
次搜索。
所以在你的情况下,我会使用CSS选择器来匹配标题:
driver.findElement(By.cssSelector("td[title='Online Training']")).click();
您还可以使用XPath来部分匹配文本:
driver.findElement(By.xpath("//td[contains(., 'Training')]")).click();