python中xpath定位下拉菜单_Selenium2+Python3.6实战(八):定位下拉菜单出错,如何解决?用select或xpath定位。...

本文介绍了在使用Python Selenium进行自动化测试时,遇到下拉菜单定位的问题。通常,XPath和Select是两种常用定位方式。通过分析,发现XPath定位在某些情况下可能不稳定,而Select定位需要特别注意导入select模块、定位到正确标签及选择选项的方式。文章提供了解决XPath定位问题的思路,并给出了Select定位成功的代码示例。
摘要由CSDN通过智能技术生成

在登录界面,有时候会有几种不同的角色,针对不同角色定位到的信息是不一样的。查询资料知道定位下拉框的元素有两种方式:Xpath和select。

但是使用xpath定位时,user定位到了,登录的时候却是调用的administrator,很是费脑。几经周折,终于解决了。

b2cf53e3cae10f455d4923f4798bb6d6.png

1.关于user用户xpath定位:用selenium IDE录制了登录过程,查看代码才发现并没有定位到user上,而是直接输入密码登录的。这让我想到,user是默认的用户,当进入登录界面时,网页默认的用户就是user,所以可以省略到定位这一步,但是这不是解决的根本方法。用IDE录制过程后再查看代码对比,可以用来作为以后排查问题的一种方式。

c569695ce70a95ca8238121a40be071d.png

2.采用select定位

在网上看到一些资料说xpath对下拉框定位并不是很好取的,比如当代码里变化了选项的顺序,那么又需要重新来写脚本,这是很不稳定的。而我用了几次select来定位,参考了网上的代码,怎么都不成功,每次都报错。

才知道用select需要注意几点:

1)先导入select模块; 2)select只对标签下的内容才有效; 3)先定位到标签,再通过index、value或者选项的文字来确定选项。

下面是我跑成功的代码:

3375c9afe5eacbc3994df2ec0493c318.png

亲测是没有问题的,只要记住前面注意的3点就能成功了。

附上非标签下拉菜单定位方法:

bfa3006e16bbc73c1f2971fed08fdd51.png

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值