自动化遇到的问题?
1、找不到元素,脚本报"NoSuchElementException:Unable to find element",或者"定位到了,不能操作,点击无效"
解决思路:
首先查看自己的"属性值"是否写正确
元素的标签不唯一,默认找到第一个
向上查看,元素是否在frame或iframe框架中
检查元素属性是否是会变动的、是否是隐藏的
2、脚本太多,执行效率太低
Selenium脚本的执行速度受多方面因素的影响,如网速,操作步骤的繁琐 程度,页面加载的速度,以及我们在脚本中设置的等待时间等。所以不能只去追求速度不保质量的测试,而是首先确保测试的稳定性,稳定地实现测试才是关键所在。
解决思路:
减少操作步骤,如经过三四步才能打开我们要测试的页面的话,我们就可以直接通过网址来打开,减少不必要的操作。
中断页面加载,如果页面加载的内容过多,我们可以查看一下加载慢的原因,如果加载的内容不影响我们测试,就设置超时时间,中断页面加载。
在设置等待时间的时候,可以sleep固定的时间,也可以检测某个元素出现后中断等待也可以提高速度。
3\启动浏览器报错
解决思路:几乎是由于浏览器版本与driver版本不匹配
4、日历控件
日历控件是一种特殊的网页元素,由于其操作的复杂性,我们无法通过模拟手工操作来进行一步步的选择。检查页面元素可以发现,日历控件属于input类型,但是由于其readonly属性,无法使用send_keys直接输入;因此,我们可以通过调用JavaScript脚本(打开Chrome浏览器-右键点击检查-进入console,即可进行JavaScript代码调试
),先删除其readonly属性,再使用sendkeys方式进行输入,代码如下:
driver.execute_script('document.getElementById("date").removeAttribute("readonly")')
相关文章
- 03-11多测师讲解自动化测试 _RF面试题_高级讲师肖sir
- 03-11多测师肖sir_高级金牌讲师__面试和答案归纳
- 03-11多测师讲解selenium—自动化测试课堂面试题总结—高级讲师肖sir
- 03-11多测师讲解接口测试 _HTTP常见的状态码归纳_高级讲师肖sir
- 03-11多测师讲解 自动化测试理论(1)_高级讲师肖sir
- 03-11肖sir _ 高级讲师 __多测师自 __自动化遇到的问题归纳
- 03-11多测师讲解自动化测试 _RF封装_(上)高级讲师肖sir
- 03-11多测师讲解自动化 _邮件发送_高级讲师肖sir
- 03-11多测师肖sir_高级金牌讲师ui自动化__接口测试之基本介绍(1)
- 03-11多测师讲解性能测试_____Tomcat调优的方法_____高级讲师肖sir