填坑webUI自动化动态变化元素

要定位的元素是查询结果列,第一行的“详情”

 

 

 

 页面看元素长这样,没有ID,没有NAME,详情上面的button,class都叫“el-button el-button--text el-button--small”。上层td的class也会根据查询结果数量的不一样,动态变化。

 

 

 

于是想了个办法,数tr

 

 

 发现我要的元素就是(tr-2)/2的那个span

#根据结果动态修改下标
_trs = self.base_finds((By.XPATH,"//tr[@class='el-table__row']"))
counts = len(_trs)
c = int(counts)
if c == 2 :
_detail_loc = (By.XPATH,"//span[contains(text(),'详情')]")
_detail = self.base_finds(_detail_loc)[1]
_detail.click()
else:
i = (c-2)/2
a = int(i)
_detail_loc = (By.XPATH,"//span[contains(text(),'详情')]")
_detail = self.base_finds(_detail_loc)[a]
_detail.click()
于是解决了这个问题

 

posted @ 2021-06-19 11:00  东方小小白  阅读(266)  评论(1)    收藏  举报