我必须使用Java检查此字段中的selenium自动化,但是每个新会话中的id字段都在变化。这些是使用hasdatepicker插件的两个日期的外部HTML: -
答案 0 :(得分:0)
根据您的HTML,如下所示
First Field - <input type="text" ng-model="pointsBank.pointsBankConfig.effStrtTsUI" size="30" customdatepicker="" required="" class="ng-pristine hasDatepicker ng-empty ng-invalid ng-invalid-required ng-not-modified ng-touched" id="dp1507178659034">
Second Field- <input type="text" ng-model="pointsBank.pointsBankConfig.effEndTsUI" size="30" customdatepicker="" required="" class="ng-pristine hasDatepicker ng-empty ng-invalid ng-invalid-required ng-not-modified ng-touched" id="dp1507184165531">
你可以尝试这个xpaths:
第一个字段:
//input[contains(@id,'dp1507')][1]
or
//*[contains(text(),'First Field')]/input[1]
表示第二栏:
//input[contains(@id,'dp1507')][2]
or
//*[contains(text(),'First Field')]/input[2]
请记住,请使用实际文字
更改文本“First Field”答案 1 :(得分:0)
试试这个 -
第一场 -
//input[starts-with(@id,'dp')][@ng-model='pointsBank.pointsBankConfig.effStrtTsUI']
第二场 -
//input[starts-with(@id,'dp')][@ng-model='pointsBank.pointsBankConfig.effEndTsUI']