代码之家  ›  专栏  ›  技术社区  ›  Bogdan Gusiev

使用xpath查询HTML标记

  •  1
  • Bogdan Gusiev  · 技术社区  · 15 年前

    我正在写硒测试。

    我在那里有一个标签“分配设计器”,标签后面紧跟着选择框。 不幸的是,选择框具有动态ID,我不能按ID或任何其他它的属性查询它。

    我可以构建返回“在文本'assign designer'之后第一个select标记”的xpath查询吗?

    ps.Selenium仅支持xpath 1.0

    1 回复  |  直到 15 年前
        1
  •  3
  •   Tomalak    15 年前

    这将类似于:

    //label[text() = 'Assign Designer']/following-sibling::select[1]
    

    注意:

    • //速记非常低效,因为它会导致文档范围的扫描。如果您能更具体地了解标签的位置,我建议您这样做。但是,如果文档很小,这不会是问题。
    • 因为我对硒不太了解,所以我用了“标签”。如果不是 <label> 当然,您应该使用实际的元素名。;-)
    • 确保包含位置谓词( [1] ,在本例中)每当使用类似“的轴时, following-sibling “。它很容易被遗忘,如果是的话,您的表达式可能会产生意想不到的结果。