实践问题总结(一)
来源:互联网 发布:战国之怒进阶数据 编辑:程序博客网 时间:2024/05/29 06:47
滴~ 今日打卡!
这两天一直在忙别的事情,都没有时间更新博客了。今天把事情处理完,马上来梳理一下这段时间自动化测试实战下来的问题及解决办法。实战用的系统是公司的项目,所以不便截图,只能大概描述一下问题,请见谅。
1. 系统登录的时候有一个bug,登录账号与密码都正确,但会弹出“登录失败”提示窗,点击确认后,系统自动跳转到主界面(实际是登录成功的)。而且!这个提示窗不是每次都会出现!
转化场景:自动化脚本如何解决不确定是否会弹出的弹窗
方法:判断弹窗是否出现再进行操作,避免弹窗没弹出抛出异常,代码如下:
from selenium.webdriver.support import expected_conditions as EC
result = EC.alert_is_present()(driver)
if result:
print result.text
result.accept()
else:
print "alert 未弹出!"
2. 定位到一个元素,使用.click()方法操作该元素,无效。
在网上查到的很多都说是因为定位不到元素。后来用F12看了一下源代码。发现onclick属性是写在这个元素里,而是写在了它的父元素里。
方法:定位到父元素,用.click()方法操作父元素实现页面跳转
3. 做参数化脚本的时候,关于元素定位的参数化。使用find_element_by_XX(“属性值”)的方式,把属性值放在excel文档里做参数化。但问题来了,如果源码改了某个元素的属性,或者直接去除了用来定位的属性,那脚本和数据文件都要修改啊,怎么搞?
方法:使用 Find_element(‘属性名’,‘属性值’)/Find_elements(‘属性名’,‘属性值’)方法定位元素。
用这两种方法定位元素,需导入by模块(from selenium.webdriver.common.by import By),然后在csv文件或字典中保存元素的属性名和属性值,维护脚本时只需修改csv文件或字典内容就好了。
- 实践问题总结(一)
- UML总结与实践(一)
- Xsl实践总结(一)
- 程序设计实践之总结一
- MongoDb实践总结(一)
- 游戏跨区的实践总结(一)
- bootstrap实践学习总结(一)
- bootbox.js实践总结(一)
- 背包问题总结一
- 问题总结(一)
- Hibernate问题总结一
- 问题总结(一)
- 问题总结一
- "设施问题"总结一
- 日常问题总结 一
- Python + selenium 实践问题(一)
- Android实践中一些问题的总结
- 定位多线程内存越界问题实践总结
- java.lang.OutOfMemoryError: Java heap space错误提示及措施
- Springmvc ModelAndView踩过的坑之HttpServletResponse response
- 利用REDEFINITION将普通表转换成分区表案例
- h5三公平台源码搭建|架设
- 小学奥数思维训练题(五)
- 实践问题总结(一)
- pip安装UnicodeDecodeError: 'ascii' codec can't decode byte 0xb6 in position 0: ordinal not in range(12
- SpringMVC
- LayoutParams设置无效可能的原因
- Python-3.6.3.tgz安装在centos上
- 腾讯 2017 暑假实习生编程题(二):小Q最近遇到了一个难题:把一个字符串的大写字母放到字符串的后面,各个字符的相对位置不变,且不能申请额外的空间。 你能帮帮小Q吗?
- mycat 实现mysql读写分离及主从切换
- 深度学习系列Part2:迁移学习和微调深度卷积神经网络
- CentOS 6.5下yum安装 MySQL-5.5全过程