在我自动化的一个网络应用程序中,我发现我遇到了一些没有ID或类或任何关联的元素,或者动态关联并且无法捕获,因此我必须使用链接文本,例如“加拿大”,然后当我做
driver.FindElements(By.LinkText("Canada")).Count > 0 ,
虽然“加拿大”就在那里,但我不会得到“真实”。有没有人之前遇到过这个问题并且知道它为什么会这样?
谢谢!
答案 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)