gpt4 book ai didi

XPath 在 IE 和 Firefox 中不同。为什么?

转载 作者:行者123 更新时间:2023-12-03 15:34:48 25 4
gpt4 key购买 nike

我使用 Firebug 的 Inspect Element 来捕获网页中的 XPath,它给了我类似的东西:

//*[@id="Search_Fields_profile_docno_input"]

我在 IE 中使用 Bookmarklets 技术来捕获同一对象的 XPath,我得到了类似的东西:
//INPUT[@id='Search_Fields_profile_docno_input']

注意,第一个没有 输入 而是有一个星号 (*)。为什么我得到不同的 XPath 表达式?我使用哪一种进行测试是否重要,例如:
Selenium.Click(//*[@id="Search_Fields_profile_docno_input"]);

或者
Selenium.Click(//INPUT[@id='Search_Fields_profile_docno_input']);

最佳答案

*[Id=] 表示它可以是任何元素,而第二个明确提到 selenium 仅查找 ID 为 Search_Fields_profile_docno_input 的 INPUT 字段。由于以下原因,第二个 xpath 更好

  • 使用 * 查找元素需要更多时间,因为所有元素的 ID 都应该匹配。
  • 如果您的 HTML 代码“写得不好”,则可能存在具有相同 ID 的其他元素,这可能会导致您的测试失败。
  • 关于XPath 在 IE 和 Firefox 中不同。为什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6386670/

    25 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com