【问题标题】:Picking up of multiple IDs together or individual ID in selenium在 selenium 中同时提取多个 ID 或单个 ID
【发布时间】:2015-09-24 12:33:06
【问题描述】:

从 HTML 中选取元素的正确方法是:一起选取页面上的所有 id 还是单独选取每个 ID?

让我解释一下这个场景。 我有一个 HTML 页面,其中包含与特定 ID 相关的信息,但 ID 有时会根据它们显示的部分而变化。 现在哪种方法更好,要么从页面中选择所有 ID,然后添加检查以获取值,要么单独选择单独的 ID。 我还需要同时处理页面上的许多 ID(100 个中的 20 个)。

请建议。 谢谢

【问题讨论】:

  • 右键单击 Element ,选择 Inspect Element 选项,这将为您提供特定元素的确切 ID。如果 2 个元素的 ID 相同,则使用 XPATH 查找元素。
  • 您可以使用 xpath 代替 ID。 Id 可能会改变,但 xpath 不会改变。
  • 感谢您的信息。

标签: selenium getelementbyid elements


【解决方案1】:

如果一个元素是静态的,因为它不会在整个测试过程中发生变化,那么在开始时选择它就没有问题。但是,我绝对认为在开始时尝试选择所有元素是一个坏主意。如果一个元素在您完成某个操作(NoSuchElementException)之前不可用,会发生什么情况。或者如果你选择了一个元素,当你去使用它时找不到元素,StaleElementException。

因此,您绝对需要在适当的时间找到平衡点并选择您的元素。我在上面看到了一些其他使用 xpath 的建议,因为它永远不会改变,这又不是真的。在文档中还建议首先尝试按 id 选择然后按名称选择。我相信这有很多原因,但立即想到的是可读性,速度也是一个因素。

【讨论】:

    猜你喜欢
    • 2017-09-10
    • 2013-03-01
    • 1970-01-01
    • 2017-12-31
    • 2021-02-12
    • 2023-01-08
    • 2017-11-23
    • 2020-01-15
    • 2021-10-05
    相关资源
    最近更新 更多