自动化测试结果分析的重要性与人工智能的应用
在QA Challenge Accepted会议上,Maroš Kutschy强调了自动化测试结果分析在测试活动中的重要性和挑战性。他指出,在任何时候,我们都应能够根据自动化测试的结果来评估产品的状态。Kutschy还展示了人工智能如何帮助他们节省分析时间、减少人为错误,并集中精力处理新的失败案例。
面临的挑战与解决方案
Kutschy提到,他们在分析自动化测试结果时遇到了挑战,并寻求一种更有效且减少人为错误的方法。他们每晚运行约4000个测试场景,其中约5%会失败,这意味着每天需要分析约200个失败案例。
为了解决这个问题,他们引入了ReportPortal,这是一个使用人工智能分析自动化测试结果的工具。该工具可以作为本地解决方案免费安装。Kutschy亲自负责了概念验证、集成和问题解决,而测试团队则每天使用该工具。
ReportPortal的功能与使用
测试人员登录ReportPortal后,可以找到他们负责的测试任务的结果,并查看“待调查”状态的失败案例。之前已经分析过的失败案例会被ReportPortal自动分类。对于“待调查”状态的失败案例,测试人员需要进行标准的分析,包括调试测试并找出失败的根本原因。
ReportPortal会显示分析结果,包括因产品缺陷、自动化缺陷、环境问题导致的失败案例数量,以及仍处于“待调查”状态的失败案例数量。最初,工具对失败案例一无所知,测试人员需要手动分类。之后,当相同的失败案例再次出现时,工具会根据之前的决策自动分配状态。
工具带来的好处
使用ReportPortal后,团队只需关注新的失败案例,而不是所有的失败案例,从而节省了大量时间。此外,工具根据之前的决策对旧失败案例进行分类,减少了人为错误,使团队能够集中精力处理新的失败案例。
Kutschy还提到,如果人工智能被错误的数据训练,它也会做出错误的决策。因此,确保工具的正确性非常重要。如果发现错误,可以手动更改决策来“纠正”人工智能。
经验与教训
Kutschy在InfoQ的采访中分享了一些经验教训。他们首先进行了概念验证,确认可以将工具集成到测试自动化框架中。然后,他们面临的挑战是让同事们遵循使用ReportPortal分析测试结果的新流程。最初,他们需要手动分类所有现有的失败案例。在试用期后,所有团队都开始使用该工具,并得到了积极的反馈。
Kutschy强调,在依赖人工智能之前,必须验证其可靠性。他们必须确保ReportPortal能够做出正确的决策,这取决于测试自动化框架中如何处理堆栈跟踪以及ReportPortal的设置。如果工具未能如预期工作,他们会尝试调整设置。
他还指出,虽然大多数讨论集中在使用人工智能生成测试自动化代码上,但分析自动化测试结果也是一个非常适合的领域。人工智能(包括生成式人工智能)可以在测试中的许多用例中发挥作用。
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。