使用XPath查询html标记

时间:2009-05-31 18:18:16

标签: xpath selenium

我正在写硒测试。

我在那里有一个标签“Assign Designer”,紧跟在标签后面的选择框。 不幸的是,选择框具有动态ID,我不能通过id或任何其他属性查询它。

我是否可以构建返回“在文本'分配设计器'后首先选择标记”的XPath查询?

PS。 Selenium仅支持XPath 1.0

1 个答案:

答案 0 :(得分:3)

这就像是:

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

请注意:

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