参考链接:
https://testerhome.com/topics/15534 : Python + flask+ selenium 自动化测试用例管理、执行平台
https://testerhome.com/topics/16106 : 使用 python 多进程模块 multiprocessing 并发执行测试用例
autotest_platform
基于python+selenium的自动化测试管理、执行平台。
注:2019-03-25: 新增接口测试模块, 具体请查看 8.接口测试管理 部分说明
UI 自动化执行效果:
单条用例执行记录:
单条用例执行截图记录:
用例集执行统计:
版本要求:
python 3.4 以上
selenium : 建议使用 3.0 以上版本
mysql : 建议 5.5 以上
使用说明:
用例编辑:
可以使用页面的编辑器编写用例步骤:
1. 新建用例:
用例步骤说明:
每个用例步骤中通过逗号进行分隔。
单个步骤的格式: 步骤名称+分隔符(|)+参数列表(参数间按@@进行分隔)。如:填写|id@@kw@@selenium, 表示步骤为“填写”,参数列表为“id、kw、selenium”。
默认的参数含义:1:通过什么属性定位目标元素(可使用id、name、class、text、xpath、css等多种定位方式进行定位) 2:目标元素对应的属性值(如id = kw) 3:其他。
例如:填写|id@@kw@@selenium: 代表通过 id = kw 查找到输入框,并输入 selenium 。
1.1 用例初始化:
初始化可以有以下方式:
指定浏览器类型,如 Chrome、 Firefox。 需要对应的selenium server支持。
指定模拟手机型号, 如 Chrome|iPhone 6。目前只有 chrome 浏览器支持模拟手机。
调用其他已封装的公共方法,如 公共方法|登录。 具体的公共方法格式与正常用例一致,但需要指定用例类型为 公共用例。
公共方法支持嵌套,即一个公共方法里调用另一个公共方法。
用例说明:
一. 使用chrome 浏览器进行测试:
例子:在百度中输入selenium,并验证查询结果是否正确。
Chrome,前往|http://www.baidu.com,填写|id@@kw@@selenium,点击|id@@su,验证|Web Browser Automation,截图
步骤解析:
- Chrome: 调用 Chrome driver 进行测试。
- 前往|http://www.baidu.com : 前往目标页。
- 填写|id@@kw@@selenium : 在 id 为 kw 的元素中输入 selenium。
- 点击|id@@su : 点击 id 为 su 的元素。
- 验证|Web Browser Automation : 验证页面中是否出现 ‘Web Browser Automation’ 的文字。
- 截图: 对当前页面进行截图并保存。
二. 使用chrome 浏览器模拟移动设备进行测试:
例子:模拟iPhone 6 打开网页,在百度中输入selenium