原创

AutoRunner图形对象算法更新,能够加速执行速度!

暴雨梨花枪
2022-07-15 16:34 464503人阅读

在自动化测试中,最头疼的事情是发现一个组件无法录制到。

无法录制到的组件,就无法对它进行操作,包括:click、setvalue()等都不可以。

在这种情况下AutoRunner使用图形化对象可以实现自动化测试。但是带来的问题是执行速度比较慢:因为图形化匹配查找组件,本身就是一个速度比较慢的算法。

我们在新版本的AutoRunner中,即将提供一个新的方法,来提速组件识别操作。具体的原理如下:

首先,AutoRunner自动化引擎会扫面当前的屏幕界面,根据图形的“特征”,找到所有“疑似”的对象,就是button、editor、combobox等组件,并且记录下来;

第二,根据我们的图形对象的图片,来提取特征值,把这个图片转换为一个图形特征值;

第三,去使用图形对象的特征值,与所有的备选组件列表进行特征值比对,找到差异(戴明距离)最小的那一个,作为识别到的组件返回;

第四,根据找到的结果,对此组件进行操作,比如click、setvalue等等。


这个新特性,提供了2个方法,第一个方法是只处理界面上的一个元素,执行完成就会转到下一个屏幕界面,处理一次耗时在5秒左右;第二个方法,支持在一个界面上处理多个不同的图形对象,那么每一个处理的速度,大概在2秒左右。当然第一次处理的时间,也在5秒(主要是用来分析屏幕上的所有的组件),之后就只存在比对问题,无需再扫描分析屏幕组件。


从本质上来说,AutoRunner的新特性,在摆脱完全依赖组件的方向上,前进了一大步,实现了通过图形特征获取对象的第一步。之后,我们会陆续支持无对象的自动化高速执行,无论被测试系统采用什么样的技术,都可以实现高速的测试执行自动化了!

©著作权归作者所有:来自Alltesting产品社区作者暴雨梨花枪的作品,如需转载,请注明出处,否则将追究法律责任

沪ICP备07036474号2003-2022 版权所有 上海泽众软件科技有限公司 Shanghai ZeZhong Software Co.,Ltd.