3年过去了,那九个AI测试工具如今怎样了?(下)
上篇、中篇 分别讨论了 5款 AI 测试工具 Applitools、Appvance IQ、EggPlant、mabl 和 ReTest。而Sauce Lab 依旧不能访问,那这篇就 review 最后三个工具:Sealights、Test.AI 和 Testim。
3年前介绍Sealights时,它已是一个基于云的测试平台,能够利用机器学习技术分析SUT的代码以及与之对应的测试,覆盖单元测试、系统的业务测试和性能测试等,并能呈现完整的质量Dashboard。今天,Sealights更是秉持DevOps思想,将贯穿软件研发生命周期的质量工作做到底,已经不用 “测试平台” ,而是 “软件质量治理平台(The Software Quality Governance Platform)”
正如我在去年QECon上海站的致辞 所说,今天我们面临三大挑战:复杂性、不确定性和速度(持续交付):
难以确定测试应该关注的正确领域 43%
不能在适当的级别上应用测试自动化 50%
需要更好的控制和测试活动的透明度和覆盖率 63%
Sealights就是为了应对这三个问题而给出的整体解决方案,确保尽早减轻质量风险,而且Sealights的软件质量治理采取数据驱动的决策方法,从而使质量治理更科学、更高效。
(Sealights的产品没有单独强调AI,而是将AI溶于产品之中,但主要体现在质量风险分析、质量洞察上)
Sealights 质量治理主要包含四个方面:策略、质量门禁、可行动的洞察和质量风险控制。
策略:组织的领导必须意识到质量的重要性并重视质量,做好变更管理和明确合规性涉及哪些方面,确定可接受的风险级别、定义每个软件治理策略的确切范围等;
质量门禁:允许管理层在整个组织中实施其质量策略的运行机制,一定能够识别可能影响生产系统的pull请求或部署请求,识别哪些策略与软件组件相关,并基于标准化的质量度量和计算风险评分强制执行 “go-no-go(是否发布)” 的决策;
可行动的洞察:软件变更、变更复杂性、测试活动和所有软件组件的底层质量的丰富数据为软件研发洞察提供支持,并使用AI和大数据技术进行分析,可以洞察质量问题,如将测试和质量度量、业务需求以及跨组织策略联系起来。
质量风险控制:在开发人员、团队的级别上提供粒度质量指标(如开发团队的变更历史、代码复杂性和代码质量指标;测试团队的所有测试级别的测试覆盖率、测试质量和测试周期),以支持数据驱动的质量决策,可以用来预测未来质量风险的缺陷和错误。
构建:AI-bots(机器人)无需编写代码或脚本就能构建测试。 维护:AI-bots自动维护测试; 规模:AI-bots可以将测试扩展到任何平台、任何应用程序类型; 加速:AI-bots加速测试到DevOps的速度。
(test.ai 层次结构)
(test.ai 系统架构)
3年前介绍Testim时,特别提到它致力于减少不稳定的测试(flaky tests)和测试维护,试图利用机器学习来加快开发、执行和维护自动化测试。
今天,它的能力明显增强,成为久经沙场的AI工具,测试创建与执行更快、更灵活和更稳定,可以录制业务工作流、自动识别并锁定元素、自定义代码等,像微软、Salesforce、JFrog等这样的公司都是它的客户,值得试用。
在录制业务操作流程时,具有高度的准确性和一致性,不仅能捕获简单的操作,如单击和文本输入,还可以捕获更复杂的操作,如拖放、iframe交互,甚至多选项卡用例。Testim能够分析web应用程序的整个DOM,以理解唯一标识每个元素的属性和关系,而且拥有智能定位器自动锁定元素,无需用户干预,以简化和加快创作过程。
(在测试的流程中进行分组、插入新的测试等)
(在测试某个步骤自定义代码)
还有一个突出的概念,挺好。
除了所介绍的8个AI工具之外,像Functionize 、Kobiton、Katalon Studio和 Tricentis Tosca等工具也具有良好的智能特性:
基于视觉线索的自动化测试,独立于底层平台或技术; 自愈测试,借助重大技术变革和升级。 AI 驱动的自动化 自定义的识别控制,通过视觉AI训练实现
最后推荐一本上周刚出版的新书《敏捷测试——以持续测试促进持续交付》,本书不仅完整介绍了高效敏捷测试所需的测试思维、流程、方法技术和一系列的优秀实践,而且介绍了大数据测试、AI测试和持续测试等。本书理论知识与实际案例深度结合,辅以思维导图、延伸阅读等模块,深入浅出,带领读者完成一次美好的敏捷测试之旅。