2022年,对于国内众多传统行业来说,数字化转型已经不是选择题,而是必答题。如何与最合适的前沿科技结合起来,加速数字化的进程,是身处全球化浪潮中的每一个中国传统企业所面临的问题。而当前大多数字化项目的落地,都是以软件为载体的。软件的功能性能、开发迭代的速度,都直接影响到企业的整体数字化进程。因此,软件上线前的相关测试工作就显得尤为重要。
随着当前软件复杂程度越来越高,迭代的速度越来越快,对软件测试工作必然提出了更高的要求,相应的软件测试工具近年来也在与时俱进,从手工测试过渡到以人工智能作为底层技术支撑,可以进行部分测试设计、实现、执行和比较工作的自动化测试工具。设计良好的自动化测试工具,在某些情况下可以实现“夜间测试”和“无人测试”,大大提高了软件测试的自动化程度,让测试人员从繁琐重复的日常测试工作中解脱出来,专心从事更有意义的测试设计等研究工作。
智能测试不是一种全新的测试类型,它存在于传统测试的某个或多个环节中。当今市场主流的软件自动化测试工具,在基础理论部分是相通的,但也都有自己的特性和技巧。从这些自动化测试工具中我们也可以看到当前软件测试行业的发展趋势。
1、Rational Functional Tester 的基础是针对于Java、.NET的对象技术和基于 Web 应用程序的录制、回放功能。工具为测试者的活动提供的自动化的帮助,如数据驱动测试。IBM RFT是一个用于功能和回归测试的数据驱动的测试平台。它支持大范围的应用,例如.Net、Java、SAP、Flex和Ajax。RFT使用Visual Basic。Net和Java作为脚本语言。
2、UFT(别名:QuickTest Professional简称QTP)是一种自动化测试工具,以VBScirpt为内嵌语言,其前身是QTP。UFT支持功能测试和回归测试自动化,可用于软件应用程序和环境的测试。UFT自动化测试的基本功能包括:创建测试、检验数据、增强测试、运行测试脚本、分析测试结果、维护测试;UFT支持两种视图,一种是Keyword View(关键字视图),另一种是Expert View(专家视图)。
3、Robot Framework是一个完全基于关键字测试驱动的框架,它即能够基于它的一定规则,导入你需要的测试库(例如:其集成了selenium的测试库,即可以理解为操作web控件的测试底层库),然后基于这些测试库,你能应用HTML、TXT等文档形式编写自己的关键字(这些关键字即你的库组成),之后,再编写测试用例(测试用例由测试关键字组成)进行测试。
而国产自动化测试工具方面,专注于行业十数年的软件测试服务商Testin云测试将AI智能化作为测试技术升级的重要推动力,构建以视觉识别和自然语言理解为技术支撑点的全新自动化测试平台TestinPro。其在脚本编写及目标对象识别上应用的智能化技术包括:基于深度学习构建的OCR文字识别、图像识别、自然语言处理引擎三大AI能力。
为避免传统自动化测试框架或工具对应用视图树的强依赖,脚本随着App版本升级、手机系统升级、微信内核升级、App加固混淆等,造成脚本维护成本高从而导致自动化价值大打折扣的问题。使自动化技术在回归测试场景中由不能变为可能,并成功落地,整体提高回归测试的效率,缩短发布周期,保障产品质量,过程中也会测试留痕便于测试过程回溯。
据统计,相比传统的自动化测试,智能测试在UI自动化测试场景覆盖率提升30%、编写效率提升100%、维护成本下降60%。在移动端证券类App自动化测试覆盖率达60%。在银行类App自动化测试覆盖达70%。传统的自动化测试覆盖率只能实现30%左右,另外还需要投入大量的研发交付成本。
软件测试工作效率为先。相信随着人工智能技术的不断发展,以AI最为底层技术支持的智能测试,可以给更多数字化转型中的传统行业带来最优的测试解决方案,加速传统行业数字化转型进程。