asdfghjk 发表于 2019-9-29 14:52:01

使用Python +selenium 实现智能测试

目标是自动化测试用例智能生成,无需编写代码。
如百度登录:操作流程包括:打开页面-https://www.baidu.com、点击登录、点击用户名登录、输入用户名、输入密码、点击登录。
自动化用例如下:

      步骤操作对象对象类型数据
操作步骤,唯一执行测试用例的动作:输入,点击,插入,选择,清除,页面导航,获取,关闭被操作的对象被操作的对象的类型:输入框、按钮、链接、图片、表格等测试数据,如果从数据库中读取,填写sql_ref
1页面导航https://www.baidu.com
2点击登录链接
3点击用户名登录链接
4输入手机/邮箱/用户名文本框xxxxxxxxx
5输入密码文本框xxxxxxxxx
6点击登录链接


1、为了实现上面的目标,需要自动识别页面元素和操作,封装成一系列动作。如:页面导航、点击链接、输入文本框等。
2、重点是定位页面元素。selenium定位通过ID、name、xpath等。由于有些页面元素没有id/name等,所以统一通过xpath定位
3、上述表格中对象列,是页面上显示出来的文字,通过查找这些文字的位置,自动生成xpath。将生成的xpath传递给定义好的方法。执行操作。
4、完成自动测试框架代码编写后,以后测试用例不用编写代码,维护方便。
上述自动测试框架使用Python+selenium实现,在项目中使用,效果比较好。

jj52314 发表于 2019-9-30 08:10:04

封装对元素的操作方法,
用例这边只关注对元素本身的做了什么操作,元素的定位,输入的信息,输出的信息

chenjianlin 发表于 2019-9-30 19:34:25

被你这标题骗进来了,没实用的

chenjianlin 发表于 2019-9-30 19:34:35

:L

asdfghjk 发表于 2019-9-30 20:22:45

是的,关键是元素的定位。操作是一样的,无非是点击和输入。
要定位frame,在页面上查找显示的文字时,有可能隐藏的部分也包含相同的文字,需要排除。

jianxiaoyao 发表于 2019-10-1 11:11:17

QTP貌似比这简单。登录这么简单的用例,录制---参数化---检查点---执行。就ok了

asdfghjk 发表于 2019-10-2 15:21:12

file:///C:/Users/wuyt/AppData/Roaming/Tencent/Users/347200539/QQ/WinTemp/RichOle/DJPYM%7BWVG~58YELCK8~Z
file:///C:/Users/wuyt/AppData/Roaming/Tencent/Users/347200539/QQ/WinTemp/RichOle/DJPYM%7BWVG~58YELCK8~Zfile:///C:/Users/wuyt/AppData/Roaming/Tencent/Users/347200539/QQ/WinTemp/RichOle/DJPYM%7BWVG~58YELCK8~Zfile:///C:/Users/wuyt/AppData/Roaming/Tencent/Users/347200539/QQ/WinTemp/RichOle/DJPYM%7BWVG~58YELCK8~Z




页: [1]
查看完整版本: 使用Python +selenium 实现智能测试