Airtest 公司业务迭代更新比较频繁,我主要负责小程序,语言:python,框架:airtest+poco+uinittest+BeautifulReport 封装了一套自动化框架,但是感觉产出比较低

Jackyang · 2020年04月30日 · 最后由 Jackyang 回复于 2020年09月10日 · 2610 次阅读

小程序项目:
主要有三个小程序功能比较稳定,但是基本每个礼拜功能需求都会进行更新迭代,有些控件元素也会变动,在写用例脚本的过程中也遇到一些问题。抛开新功能点
,打算是将主流程的 ui 页面功能写成脚本,在发版上线的时候辅助进行功能回归。但是收益甚微,各位大大有什么好的办法,能提高这一方面的测试效率呢。
在脚本编写过程中也遇到一些问题:
1、 弹窗问题,不好处理
2、有些页面元素定位也不太准确

poco 框架定位元素方法主要这四种:
1、name
2、text
3、坐标
4、UI 元素结构树

airtest 框架可以通过图片算法截图定位元素

辅助元素定位工具:airtest ide

希望有哪位大神指导一下~~感谢

共收到 9 条回复 时间 点赞

用 appium 吧 你说的两个问题都会有好一点的改善。但是 UI 元素变动好像是 UI 自动化的弊端

J 回复

谢谢~ appium 的确是主流的框架,不过个人没有搭建过 appium。UI 元素变动的确很让人头疼,也看到一些文章使用 pageobject 思想来将这些元素进行管理

个人实践经验
方案一:要是人员足够,建议使用 appium,在 ui 改动频繁的情况下,建议是 macaca 这一类的遍历框架
方案二:使用遍历工具结合图片识别,训练个 AI 模型(目前我们这个方案内部是适用)

欲野法师 回复

感谢你的方案,目前方案一,结合我们公司的情况,人员是不够的。所有打算采纳方案二的,airtest 有两种方式编写用例脚本,一种是使用 poco 框架、另外一种就是用 airtest 框架,创建.air 文件脚本,结合图像识别进行脚本编辑,按您所述,是结合这两种方式来吗?

小程序不如 native 好做,试过一次,找寻元素层级太深了,一是慢,而是容易出错,这次定位到,下次就定为不到了。
但是 poco API 比较方便,不像 appium 需要耗费大量时间,所以即使 UI 变动,快速跟进修改吧!!

秦岭 回复

谢谢您的回复,这一块,我也是新入门,再不断尝试,希望在后面慢慢摸索的过程中,能找到解决问题的方案

Jackyang 回复

不是,我们这里是吧一个模块的用例做成一个测试集,让他每天自己随机跑,然后跑的时候,每次点击都采集图片转成二进制数据,建立对应的数据模型,然后模型稳定之后,后续跑的时候,就直接根据模型,他自己这模块里面回归业务,遇到错误自己判断之类的,相当于,我们已经训练成模型的用例,干掉了😋
(个人经验总结,方案二需要,自己补机器学习那部分知识)方案 2 是在有大批量用例的模式下产生的,主要是不想维护测试用例了😏

欲野法师 回复

请问你们用的方案 2 用的什么库实现的

欲野法师 回复

大神,请问机器学习这一块从哪些方面入手学习,我对这一块是小白水平,不知道从何学起

需要 登录 后方可回复, 如果你还没有账号请点击这里 注册