【问题标题】:breakdown xpath击穿 xpath
【发布时间】:2011-03-02 18:41:15
【问题描述】:

我在看网站。尝试将 selenium html 传输到 junit 但无法使其工作,因为它一直说错误:找不到元素。也许是语法错误,因为我能够将其分解为 firebug 中的最短路径,但仍然无法编译。在这种情况下你会怎么做?

注册

我使用firebug Xpath来获取上面链接的值 /html/body/div[@id='contentDisplayPane']/div[@id='mainDiv']/div[@id='mainDivContent']/div[@id='simpleBox']/table/tbody/tr [2]/td[@id='fb_PageContent']/table/tbody/tr/td/table/tbody/tr/td[4]/a

使用 firebug xpath,我能够将其分解为这个并能够访问 Enrollment 链接。但是当我把它放在 junit 测试用例中时 selenium.click(("//div[@id='simpleBox' ]/table/tbody/tr[2]/td[@id='fb_PageContent']/table/tbody/tr/td/table/tbody/tr/td[4]/a"); 我得到错误:元素 //div[@id='simpleBox']/table/tbody/tr[2]/td[@id='fb_PageContent']/table/tbody/tr/td/table/tbody/tr/ td[4]/a") 未找到

感谢任何帮助或提示

【问题讨论】:

  • 我也“很想知道”您发布这些 XPath 表达式的 XML 文档是什么?请您提供一下好吗?

标签: xpath selenium


【解决方案1】:

tbody 元素实际上是在 html 中还是只是被 Firefox 插入?如果 Firefox 正在插入 tbody 并且您的 junit 测试正在驱动不同的浏览器,则 tbody 可能不存在。由于您没有发布您正在测试的文档,因此只是在黑暗中拍摄,但也许它会有所帮助。

【讨论】:

    【解决方案2】:

    嘿,如果您想单击网页上的任何链接。 您必须首先找到此元素/文本的 Xpath,为此您可以使用 Firebug。所以这里有一个 ex:您可以在 IDE 中使用 selenium.click(//a[text()="ON"]) 并将其转换为junit 得到这个 selenium.click("//a[text()=\"HereYouCanPutYourText\"]");

    如果您有任何疑问,请随时..

    【讨论】:

      猜你喜欢
      • 2014-11-20
      • 1970-01-01
      • 2014-02-26
      • 1970-01-01
      • 2020-07-09
      • 2021-06-20
      • 2020-10-28
      • 2015-05-14
      • 1970-01-01
      相关资源
      最近更新 更多