在之前,我们分享了appium的系列文章,在UI自动化测试中可以编写固定的case,来达到UI功能的自动化测试的目的,通常我们的Ui自动化用在回归测试验证中,但是在实际的过程中,会遇到这样的一个问题。我们的UI case没有大量的堆积沉淀,UI迭代变化特别快,大量的回归测试的工作,且UI变化太快,UI自动化测试跟不上业务的发展。很多时候,有些人期望去有这样的一个工具,可以去遍历每个界面的的所有元素,进行操作,遍历所有的全部的路径,保证覆盖到app的所有可以操作的元素。这样就需要一个可以操作所有路径的工具。
在市面上,有很多优秀的UI自动化测试工具,最具有代表的就是appium,主要是跨平台。可以兼容Android和IOS app的测试。UI遍历的工具可以基于appium来实现。当然了用其他工具也是可以的。这里如何设计实现呢,方案整体是基于appium来实现。会在接下来的分享中大概的写下这里面的逻辑流程。
这里主要分析下大概的思路,工具选择appium,开发语言选择python。
选择appium就是考虑跨平台,而且比较热门。
选择python因为上手简单,快速开发实现。
主要设计如下
代码语言:javascript复制1.基于深度优先算法,遍历所有可测路径
2.支持运行可配置化
3.收集测试过程中log,分析崩溃
4.收集测试过程性能数据
5.点击过程可以截图并记录点击范围
6.分析测试过程性能数据,log日志
7.分析测试结果,行程测试报告
基于上面设计思路,就可以去设计开发UI遍历的小工具。那么我们对于里面的功能进行拆分。
对于框架内功能实现来说。
主要分为:
代码语言:javascript复制1.入口文件
2.配置文件
3.解析文件
4.遍历实现
5.log日志获取
6.获取性能数据功能封装
7.appium相关功能封装,包括截图功能
8.日志处理
9.测试结果汇总
10.性能图构建。
上述是对功能的划分。那么接下来就是对于整个UI遍历的流程的梳理,包括里面开发包的选择。
功能需求的设计,功能的设计是第一步,接下来就是梳理整个的流程,画出来整体的流程图。
那么对应的流程图,我们放在下一次分享中梳理。