Selenium Web驱动程序无法识别链接文本

时间:2013-01-10 20:56:19

标签: selenium-webdriver

在我自动化的一个网络应用程序中,我发现我遇到了一些没有ID或类或任何关联的元素,或者动态关联并且无法捕获,因此我必须使用链接文本,例如“加拿大”,然后当我做

driver.FindElements(By.LinkText("Canada")).Count > 0 , 

虽然“加拿大”就在那里,但我不会得到“真实”。有没有人之前遇到过这个问题并且知道它为什么会这样?

谢谢!

2 个答案:

答案 0 :(得分:2)

使用

driver.switchTo().frame("Your LinkText Frame Name");
driver.FindElements(By.LinkText("Canada")).Count > 0 ;

然后试试。

我认为它可能有用。

答案 1 :(得分:1)

你确定“加拿大”确实在<a>标签中吗? By.LinkText旨在搜索锚文本

您当然可以创建一个XPath来搜索By.xpath。类似于“// * [contains(text(),'Canada')]”(这是我可以在不知道你的HTML结构的情况下给你的唯一xpath)