博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
selenium下拉框踩坑埋坑
阅读量:4978 次
发布时间:2019-06-12

本文共 935 字,大约阅读时间需要 3 分钟。

本文来自网易云社区

作者:王利蓉

最近web端全站重构,所有的页面都大大小小都有些变动,UI就全军覆没了,用例从登录改,改到个人信息页面发现根以前的实现方式完全不一样,这可怎么解决

1.以前的实现(option value的对应),现在是新页面 我就找个其他网站的参考下

b26ad583-750e-4a49-af14-61d7ce4ebb7a

            Select                select demo        
            
Op1            
Op2            
Op3            
Op4            

这种通过直接给value赋值即可,网上寻找解决方法也很多,脚本实现如下:

bot.click(By.xpath("//select[@id='birth-year']/option[@value='" + year + "']"));

2.重构之后的实现,选择时元素为隐藏状态,选择过程是联动的,找不到元素 哭!!

48135863-f70b-4ac9-9355-a0a7c752afb9

860e7fdc-1d49-49ed-8fc1-c1f086257d8f?imageView&thumbnail=980x0

这种该如何解决呢?开始的时候想采用第一种方法,隐藏的那个元素直接赋值,如红框所示,想想也是不可能的,于是就网上找解决方法,如何将隐藏的元素显示出来,果真还真被找到了,通过js,显示各种隐藏的元素。

js="var p=document.getElementByClassName('Select-value');p.style.display='block';"driver.execute_script(js);bot.click(By.xpath("//div[@aria-owns='react-select-5--list'][@aria-activedescendant='"+province+"']"));

网易云,0成本体验20+款云产品!

更多网易研发、产品、运营经验分享请访问。

相关文章:

【推荐】 
【推荐】 

转载于:https://www.cnblogs.com/zyfd/p/9796228.html

你可能感兴趣的文章
【Herding HDU - 4709 】【数学(利用叉乘计算三角形面积)】
查看>>
OPENSSL使用方法
查看>>
开发WINDOWS服务程序
查看>>
cross socket和msgpack的数据序列和还原
查看>>
解决跨操作系统平台JSON中文乱码问题
查看>>
前端利器躬行记(1)——npm
查看>>
前端利器躬行记(6)——Fiddler
查看>>
Intellij Idea新建web项目(转)
查看>>
用JAVA编写浏览器内核之实现javascript的document对象与内置方法
查看>>
centos iptables
查看>>
寻找二叉查找树中比指定值小的所有节点中最大的那个节点
查看>>
如何设置输入框达到只读效果
查看>>
RT3070 USB WIFI 在连接socket编程过程中问题总结
查看>>
MIS外汇平台荣获“2013年全球最佳STP外汇交易商”
查看>>
LeetCode 题解之Add Digits
查看>>
hdu1502 , Regular Words, dp,高精度加法
查看>>
SpringBoot在idea中的热部署配置
查看>>
MyEclipse连接SQL Server 2008数据库的操作方法
查看>>
JS验证图片格式和大小并预览
查看>>
laravel5.2 移植到新服务器上除了“/”路由 ,其它路由对应的页面显示报404错误(Object not found!)———新装的LAMP没有加载Rewrite模块...
查看>>