18种定位方式=8种单数形式+8种复数形式+2种底层方案
单数可以确定唯一,复数无法确定;
单数形式定位,返回的是一个元素,复数形式,返回的是一个列表,返回的是当前页面所有符合要求的元素,没有意义
一、8种单数形式:
1、通过id属性定位,driver.find_element_by_id('i1'),定位之后操作页面上的数据driver.find_element_by_id('i1').send_keys('123123')
2、通过class属性定位,并向该属性写内容
3、通过name属性定位
4、通过标签名定位
5、通过xpath路径定位(优先考虑cssSelectors定位,第二考虑xpath定位)
建议:我在做UI自动化时,在一个多选input框进行定位时,因为唯一元素是value值,其他的name什么的都相同,尝试过很多种定位方式,都不行,最终用的xpath带角标的形式进行唯一定位成功了
6、通过cssSelectors定位(8种单数形式中优先考虑)
7、链接点击操作
8、链接模糊查询点击操作
二、8种复数形式:就是在8种单数形式,element后面加s,因为复数形式返回的是一个列表,并不确定唯一元素,所以不用复数形式
三、2种底层方案:选中find_element按ctrl加左键查看内部使用方法,以下是id属性定位的方式