一、平台背景
1、用 python 写了 UI 测试用例也有三年时间了,之前都是将启动用例的入口放到 jenkins 上调度来启动全部的测试用例,或者是分模块写 N 个 start.py 文件来调度测试用例。越来越觉得可以自由调度是迫不及待的事情了,比如:开发人员说,我只想跑某个单子,运行一下看看流程通不通。那么这个时候你需要再 jenkins 上建个构建显然就比较累。所以,这个平台的首要任务就是可以让使用者自由调度,将用例自由组装成任务
二、功能
1、首先按照项目分类测试用例!!
2、用例列表展示页面!
可以多选用例,创建一个任务!!
3、任务列表,执行任务——就会执行关联的测试用例,UI 视频面板——可以看到所有的已执行的测试用例视频,LIVE 视频——查看正在执行的 UI 测试用例,定时任务——顾名思义。下图为已执行的测试用例视频,还可以在线查看正在执行中的视频
4、定时任务页面,展示设置定时任务的任务,可以进行增删改查
5、执行结果,可以看到执行完成的 UI 测试报告
6、收件人配置,配置收件人的邮箱、或者钉钉、企业微信账号
7、Job,可以添加类似.py 文件的路径,来执行。比如;python xxx.py。执行结果里可以看到这个 job 打印出的文本信息
三、收集意见
第一次发文章,大家有更好的意见,欢迎在下面指出,我的思路能给各位提供帮助,也希望给个赞!
四、技术栈
1、后端:python+django+REST_framework
2、前端:vue+elementui
3、其实我觉得都只用到了最浅显的入门知识,最重要的可能是我的这个平台设计,所以分享给大家!
五、技术支持
1、想学习开发这个平台的可以加我微信:liuxiaolu4986
楼主这样的做法很不错,想顺便问一下,如果这样做会不会让 UI 自动化本来已经非常高昂的维护成本上增加了一个平台的维护成本呢?
看起来不错,之前用 docker 跑的 selenium server 也想尝试一下换成 zalenium 的,后来没时间弄了?
先收藏
楼主这样的做法很不错,想顺便问一下,如果这样做会不会让 UI 自动化本来已经非常高昂的维护成本上增加了一个平台的维护成本呢?
我们也是这么做的,平台维护成本磨合一个月左右,其实就比较稳定了
我写了一个分布式调度服务,支持如下功能:
1,后端节点监控
2,用例分析:将单条运行任务得命令分析出具体得模块,用例并生成用例执行队列
3,用例执行:分布到不同得后端节点进行执行和收集执行报告
等等。。。
有空的话可以一起交流
那个视频怎么弄的呢?
我也做了一个类似了,还有额外的接口测试和常用测试工具
能否请教下这个平台搭建都用到了什么技术,留个微吧,有偿请教
楼主,我想问下,支持本地调试吗
Mark!楼主做这个用了多长时间?
查看正在执行的用例是用什么技术实现的?
你好,可以分享一下源码不,可以的话我加你
大佬你好 想问下 你们 Airtest 平台执行用例的设备是模拟器吗 我这边也想做成持续集成但是目前的问题是,需要数据线连接真机,而且还需要笔记本电脑,没办法自动控制电脑的关机与开机,也没办法控制手机的开锁与解锁,想问下你们是怎么做持续集成的
1、你们 Airtest 平台执行用例的设备是模拟器吗?
我们用的真机
2、需要数据线连接真机,而且还需要笔记本电脑,没办法自动控制电脑的关机与开机,也没办法控制手机的开锁与解锁,想问下你们是怎么做持续集成的?
需要数据线连接真机: 必须的
需要笔记本电脑:最好用台式机 +linux 操作系统作为服务端,保障服务稳定性
没办法自动控制电脑的关机与开机:为什么要控制电脑的开机与关机? 是对电脑做自动化吗?
没办法控制手机的开锁与解锁:这个利用 adb 之类的工具,完全可以控制
是这样的 我们现在还是代码部署在本地 每次运行 airtest 自动化脚本时,还是会打开笔记本电脑,打开 pycharm 找到启动文件点击运行,因为脚本运行的前提是,手机数据线需要连接到我的执行机器 (笔记本电脑),我也想过把代码部署到 linux 服务器上,但是没办法解决服务器连接手机的问题,我也不可能把手机数据线连接到服务器上,目前还没有做到持续集成,还是需要人为手工执行脚本,我主要想了解下你们是怎么执行的呢,如果方便能否留个联系方式呢 向您请教下
十分感谢您的回复,根据您的回答我理解的是,您的 Aritest 自动化脚本系统是部署在自动化服务器上的,然后手机和手机的数据线长期连接到这个自动化服务器上,当你这边需要执行自动化用例时,会请求到你的自动化脚本,然后解锁手机->执行 UI 自动化脚本用例->手机锁屏