一、背景:
为了做app的自动化,由于app元素定位麻烦或者定位不稳定,又或者使用驱动版本等原因,不想使用启动appnium服务的方式。
本文采用网易的airtest框架图像识别作为基础,配合pytest进行简单的二次开发形成一套对安卓app,小程序的UI功能自动化测试框架。
二、框架简介:
框架集成使用pytest+pocoui+airtest+allure
,所以命名为ppa_project. 其中pytest负责用列的管理,可以对用例进行单条,多条,分类执行等等。同时,pocoui+airtest 负责UI控件的定位和图像的识别。框架的核心要素,allure负责测试报告的生成。
三、项目目录:
项目目录详细注解:
base:封装基础方法 如滑动,点击等
config : 手机设备信息,app包信息 测试数据等yaml配置文件
logs : 记录每次运行的日志
page :app的每个页面的元素,其中main_page 作为app的初始页面。
reports :测试报告的数据和生成allure报告的地方。
testcase :测试用例文件。
testcase/case_image 存放用例中的图片(我这里是分页面存放)
utils :工具类,包含日志,发送邮件等
launch.py: 设备的连接和app的启动文件
run.py: 项目启动入口
四、核心代码解释:
1)连接手机,启动app,
读取config/device.yaml文件中的deviceName和appPackage。 在launch文件中使用start_app()和close_app() 启动和关闭app
2)main_page. 初始化poco
3) login_page 在登录页面引入main_page 开始启动app,然后app启动过程中肯定需要一定的时间,这个跟测试的手机性能有关,所以我们就循坏去找首页是否出现,找到了就算成功。然后在判断app是否已经登录,如果未登录进入登录流程,如果已经登录则开始后面的业务流程测试了
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)