我是Selenium的新人。我无法捕获id值,因为每次刷新
id=ClientAgreements_863f4ace-84fb-4dbb-bb8c-7d7835ceaec9__AgreementType
<td>select</td>
<td>id=ClientAgreements_863f4ace-84fb-4dbb-bb8c-7d7835ceaec9__AgreementType</td>
<td>label=New</td>
答案 0 :(得分:2)
如果ClientAgreements或AgreementType文本已修复,则可以尝试
//div[contains(@id,'ClientAgreements')]
//div[contains(@id,'AgreementType ')]
答案 1 :(得分:1)
如果id
一直在变化,那么通过id
查找元素可能不是一个好主意。您需要提出一个始终稳定的位置策略。
正如Rohit Ware所说,如果id中的ClientAgreements
和/或AgreementType
足够,你可以通过XPath找到它:
xpath=//*[contains(@id,'ClientAgreements')]
xpath=//*[contains(@id,'AgreementType')]
xpath=//*[contains(@id,'ClientAgreements') and contains(@id,'AgreementType')]
如果没有,请寻找元素的其他独特品质。是否有name
属性或唯一类?它始终是具有特定属性的页面上的第一个(第二个,第三个?)元素吗?它是否包含任何特定文本?它是一个容易找到的元素的孩子吗?
如果您希望我们为您提供帮助,请向我们展示该元素的HTML代码 - 如果您认为它是相关的,您也可以添加一些周围的元素。我们将提出一个解决方案,但您必须以任何方式查看CSS选择器和/或XPath,以便下次自己能够解决它。
如果您想帮助自己,Google CSS Selectors tutorials和XPath tutorials并取一个。