MuziWater 2019-11-28
近日,Testin云测正式发布全新AI测试产品iTestin,融合目前测试领域内好用的自然语言处理、文本识别、图标识别技术,全面提升测试产品的易用性和自动化效率,通过人工智能技术,大大降低脚本调试和脚本维护成本,在App和Web测试数据集精度和性能上超过主流云厂商的付费高精度OCR服务。
为了支撑自然语言撰写的自动化测试脚本语言的稳定与高效执行,需要高精度、高效率的AI算法提供可靠的识别效果。Testin云测在业务理解、数据理解、数据准备、算法建模、性能评估、模型部署全流程上实现全面提升,形成了AI技术在测试领域落地的实践。
强力后盾:英特尔助力iTestin实现最前沿的测试技术研究
自然语言脚本在上千台不同型号的手机自动执行,必须有足够高的文字检测识别精度。为了解决识别精度的挑战,Testin云测打造了业界大规模的APP截图的字符识别数据集,并通过算法自动生成上千万条数据用于字符识别模型的构建。文字检测与识别的建模工作中,充分发挥传统计算机视觉算法的速度优势与深度学习算法的精度优势,最终算法的检测精度、识别精度、识别速度全面超越头部互联网公司的付费高精度文字识别服务。
Testin云测OCR算法成功支撑了公司的AI测试服务,也为重点客户的私有化部署产品提供了便利。为了提升OCR深度学习的效率,Testin云测与英特尔联合进行了探索,并重点从基础设施平台配以工具套件来构建解决方案,用软件加速以及硬件支撑两个角度对OCR方案进行优化。Testin云测基于英特尔至强可扩展处理器、英特尔的开放式视觉推理和神经网络优化(以下简称OpenVINO)工具套件对OCR深度学习方案进行优化,将AI测试中的OCR识别时间从2秒降低到0.3秒左右,实现了6倍的性能提升,且不影响测试的效果和结果。
具体来说,在基础设施平台的搭建上,Testin云测选择英特尔至强金牌6140处理器,其不仅拥有强大的通用计算能力,还集成了增强单指令多数据流、英特尔AVX-512新指令集等创新技术,实现了对于通用计算能力和并行计算能力的兼顾,为深度学习训练提供了良好性能基础。在软件与算法层面上,Testin为了加速OCR方案,使用英特尔OpenVINO工具套件分发版来进行加速。该工具套件支持开发人员使用行业标准人工智能框架、标准或自定义层,将深度学习推理轻松集成到应用中,开发人员只需编写一次代码,即可将其快速、无缝地部署在当前和未来的英特尔硬件上,从而消除应用重复开发问题。英特尔技术负责人表示,“英特尔至强可扩展处理器与英特尔OpenVINO工具套件的结合实现了超高的推理性能,帮助Testin云测及其客户快速实现文本点击、文本验证等功能,加快AI自动化测试的速度。该方案保障了OCR整体工作流的执行速度,且OCR的整体识别正确率达到99%以上。”
除了OCR算法以外,Testin云测还在图标识别、图像审核、标注质检等多个方向上开展了AI技术的探索与应用。
作为英特尔在AI领域的重要合作伙伴, Testin云测CTO陈冠诚表示:“未来,我们还会考虑在更多的模型中尝试英特尔的技术加速方案。两家还将继续在前沿技术上进行协同研究,努力一同将领先技术落地于测试行业,进一步提升产品的智能化水平,不断提升产品和服务的易用性和工作效率,应用AI技术为行业赋能。”
更智能,更简单,更易用,下一代测试产品的品格
1.自然语言处理:降低操作门槛
iTestin将AI智能化作为测试技术升级的重要推力,通过基于自然语言的脚本录制功能,支持用自然语言的交互方式,完成测试自动化操作。
用户只需要输入“点击搜索”,iTestin就能自动在APP当前页面中检测并识别出“搜索”,并完成点击操作。传统的测试脚本需要大量的人工介入,通过手工框选目标控件来实现脚本录制和维护,iTestin这种全新的自然语言脚本大幅降低了脚本录制的难度,也极大提升了产品易用性和脚本维护效率。
在QQ音乐,输入“点击搜索”,操作机器自动执行进入到搜索界面,点击搜索音乐到输入框,输入“周杰伦”,点击“说好不哭”
Testin云测总裁徐琨在NCTS中国云测试峰会上用自然语言在iTestin上现场演示AI+测试的真正能力,只需在界面中输入点击、等待、检查、长按、输入等自然语言的文字描述,后台的AI就能准确实时的在真机上进行完整无误的操作和相关指令。
2. OCR文字识别:实现跨平台脚本能力,降低脚本维护成本
目前大部分应用为了Android端和iOS端的体验一致,会倾向在两个端上采用相同的UI设计,即相同的UI界面和操作体验。企业希望减少对脚本维护的人力投入,同时在后续新增脚本时,逐步将Android端和iOS端的脚本统一为一套脚本,这样进一步减少脚本维护的投入。Testin云测通过只依赖UI界面截图的OCR和图标识别技术,使得Android端和iOS端使用同一套UI自动化测试脚本成为可能,实现跨平台脚本能力,大大降低脚本维护成本。
在对OCR的检测和识别模型进行训练时,数据是最关键的输入,而且数据的精准度和多样性,对模型的精准度和泛能力起到决定性作用。Testin云测拥有自身多年积累的应用测试数据,OCR训练数据量达1600万,并且具有专业的AI数据采集与标注团队对数据进行处理。
3.图标识别技术:进一步提升用户体验和自动化测试稳定性
在应用的UI自动化测试中,除了文字,图标是另外一个与用户交互最多的元素。在传统的自动化测试中,图标的识别主要靠控件ID和其他的控件信息,如class,xpath等,但这些信息在自动化测试实践中被证明存在较大的不可靠性。因此,Testin云测的自动化测试主要从图像的角度来识别和定位控件元素。
图标识别技术是除OCR以外,另外一项支撑Testin云测自动化测试的关键技术。目前大部分应用采用简约设计的线条形图标,导致原本可靠的模板匹配和特征点匹配技术失效。在实际测试中,现有最好的图标识别技术,正样本的准确率只有66.87%,负样本准确率为91.16%,单个图标识别耗时为1532ms。Testin云测对简约设计的线条图标的识别,专门设计了图标相似度判别算法,大大提高了图标识别的准确率和对正负样本的分辨能力,最终的正负样本准确率在测试数据集上都超过了97%,单个图标识别平均耗时为319ms,实现了业界领先的识别精度和性能。
此外,Testin云测利用自身的数据积累的优势,对应用上的常用图标利用深度学习目标检测技术实现自动识别和定位,进一步提升了用户体验和自动化测试的稳定性。
结语