做 UI 自动化时遇到这种单选列表中,选择指定框的用例(比如我要选图片中的 zhangwang1)。
因为单选框列表会改变(新增),所以我想选固定的一个的话就不能通过位置来选择了。
我观察了一下页面代码,这里的布局结构是两个 span,一个 span 是单选框,另一个是单选框后面的文字。
请教一下各位大佬,我用该如何从这些单选框中,选择到指定的单选框(zhangwang1)?
这种 css 应该不行,只能 xpath
//*[contains(text(), "zhangwang1")]
OK,感谢大佬
大佬再请教一下,我直接用 contains text 的话没法定位到我要的那个,因为页面中有 5 个叫"zhangwang1"的。 这 5 个的 xpath 如下图: 我要的是最后一个,我该如何从中选出它来?
//span[@class='ivu-radio']/span[@text='zhangwang1'] 可以试下,很久没玩 selenium 了
不成,没查出来,感谢大佬了
用 find——elements 找到一个数组,最后一个就是数组最后一个吧
//span[@class='ivu-radio']/span[@text='zhangwang1'] 我这边看错了 @class='ivu-radio' 和你想要的 zhangwang1 元素是同级 所以把 //span[@class='ivu-radio'] 部分内容改成能确定到你要的 span 的上级就可以了,你这边截图内容没显示全
self.find_xpath('//*[contains(text(), "zhangwang1")]')[4].click() 终于点到了,感谢大佬