首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往
您找到你想要的搜索结果了吗?
是的
没有找到

AI自动化测试就这样被实现了(一)

AI测试自动化其实就是通过提供的数据进行一定的数据规则统计(简称算法)然后提供给自动化框架/平台进行有规则进行测试,并产生报告,在这样的AI自动化的一个最大难点就是数据采集以及自动化框架。刚好在一次偶尔跟开发聊天的过程中,提到路由跳转调试功能,就这样的衍生了安卓AI自动化测试。实现的思路,就是通过通过发布测试的apk版本,测试通过在该版本的测试记录,会在手机的固定目录产生日志,然后测试工程师功能测试完以后,通过辅助的apk,把测试轨迹和apk版本对应点击上传按钮,上传到服务端进行版本数据分析,提供热点数据,热点数据就是测试工程师在这个版本操作最多的功能页面,然后把这个数据传到基于4399AT实现的自动化平台,实现对于用户常用功能测试,页面遍历测试以及常用页面的兼容性测试;在这个流程中,路由协议跳转功能不仅可以取服务器数据进行测试,也可以进行本地轨迹测试,实行多样化测试;整体来讲,AI自动化测试也就是数据驱动测试; 现在我们就来一一AI自动化测试运用到的功能,首先就是通用协议跳转功能(routers),这个功能配上4399AT自动化工具,可以带来的好处有:实现routers页面跳转,routers页面遍历,router页面快速页面兼容性UI验证,routers页面降低了用例数,提高用例执行成功率,Bug验证,接口验证(功能验证)。对于通用路由跳转协议命令就是adb shell am broadcast -a intent.action.debug -n apk包名/.receiver.GameCenterReceiver --es payload + routers页面数据,其中routers通用协议跳转需要开发在安卓app进行开发,通过activity,封装跳转功能与router url 转成对应的页面,然后进行定义相关数据。这个实现大概说下,具体APP开发应该都明白。我们只要知道这个命令调用就可以。具体的这个功能演示如下:

02

安卓UI自动化工具4399AT元素定位之图像识别

目前在测试领域中安卓UI自动化,维护成本是非常高的,那有什么方法可以降低维护成本呢?我个人看法有几个,通用的就是使用PO模式设计,跟开发约定命名规则,还有同一个控件可以多个元素定位,图像识别,开发录制工具,降低编写脚本门槛,AI自动化,这些是在排除功能需求频繁变更的因素之外,以下对大家比较有疑问的进行简单解释下: 同一个控件多个元素定位是指不同的版本中同一个按钮的元素如res-id不一样,这时候只要这个控件的定位输入多个res-id,这个没有找到就找下一个,这样脚本就可以在多个版本使用,脚本的复用性就很高了; 降低脚本编写门槛,就是通过简单培训,不需要有编程能力,人人都可以参与脚本的编写; AI自动化,就是通过操作app的规则生成文件,然后通过辅助apk把文件上传到服务器,进行热点分析,然后把数据推到自动化框架进行测试(弱弱地说,已实现,效果还不错,投入成本不高) 图像识别解决难定位元素以及webview,WindowManager 做的图标或者页面定位操作;

02
领券