AI实践哪家强?来 AICon, 解锁技术前沿,探寻产业新机! 了解详情
写点什么

在自动化测试结果分析中使用 AI 工具

  • 2025-04-22
    北京
  • 本文字数:1635 字

    阅读完需:约 5 分钟

在自动化测试结果分析中使用AI工具

Maroš Kutschy 在 QA Challenge Accepted 大会上表示,自动化测试结果的分析是测试活动的一个非常重要且具有挑战性的部分。在任何时刻,我们都应该能够根据自动化测试的结果来判断产品的状态。他介绍了人工智能如何帮助他们节省分析时间、减少人为错误,使团队能够专注于新出现的失败的测试。


Kutschy 提到,他们在分析自动化测试结果时遇到了挑战,正在寻找一种更高效且更少出错的分析方法:


如果你每晚运行 4000 多个测试,其中约 5% 的测试失败,那么你每天需要分析大约 200 个失败的测试。


他们引入了 ReportPortal 这个工具,它使用人工智能来分析自动化测试结果。正如 Kutschy 所说的,这个工具可以作为企业内部解决方案进行免费安装:


作为这个工具的管理员,我完成了概念验证和集成,并解决了所有问题。现在,功能团队的测试人员每天都在使用它。


Kutschy 说,测试人员登录 ReportPortal 找到他们负责的作业的运行结果,并查看有多少失败处于“待调查”状态。前一天的失败测试(之前已经分析过)已被 ReportPortal 分类。对于“待调查”状态的失败测试,他们需要执行标准的分析流程,即调试并找出失败的根本原因:


ReportPortal 会显示分析结果;你可以看到有多少测试是因产品缺陷、自动化缺陷、环境问题导致的,以及还有多少失败的测试处于“待调查”状态。


Kutschy 说,当你刚开始使用这个工具时,它对失败的测试一无所知。测试人员需要决定测试失败是产品缺陷、自动化缺陷还是环境问题导致的。当下一次相同的测试再次失败时,工具会根据之前的判断,利用人工智能为失败分配正确的状态。


Kutschy 提到,仪表盘通过展示分析结果提供了测试和应用程序状态的概览视图。实时可见的分析状态让你可以看到谁正在处理哪个失败的测试,这有助于决定是否可以发布应用程序。


使用这个工具可以节省分析时间,因为它们只关注新失败的测试,而不是所有失败的测试,正如 Kutschy 所说的:


区别在于,如果你今天有 100 个失败的测试,其中只有 2 个是新出现的,你只需要查看这 2 个。如果你不使用这个工具,就需要查看 100 个。


由于工具会根据之前的决策对旧的失败测试进行分类,因此减少了人为错误。这有助于将注意力集中在新出现的失败测试上,Kutschy 说。


如果人类用错误的数据训练人工智能,人工智能也会做出错误的决定,Kutschy 说。如果你是一个糟糕的老师,你的学生(ReportPortal)也会表现不佳:


有时,一个同事会将失败的测试链接到错误的 Jira 任务,或者为失败的测试分配错误的状态。


你可以通过手动修改来“取消学习”,Kutschy 说。


如果正确使用人工智能,它可以为你节省大量时间并减少人为错误,Kutschy 说。在确认它可以正常运行之后,你就可以信赖它,不再需要你们手动对失败的测试进行分类。


InfoQ 采访了 Maroš Kutschy__,了解他如何使用人工智能进行自动化测试分析。


InfoQ:你在这个过程中遇到了哪些挑战,又是如何解决的?

Maroš Kutschy:我们首先进行概念验证,确认我们可以将该工具集成到我们的测试自动化框架中。


接下来,我们让同事们遵循使用 ReportPortal 来分析测试结果的流程。最初,他们需要对所有的失败测试进行分类,即为它们分配正确的状态(自动化问题、产品缺陷、环境问题)和 Jira 任务。


我们先是在指定的团队中进行了测试,然后让所有团队都开始使用。试用的反馈非常积极,测试人员觉得它很有用,因为它帮助他们简化了分析工作。


InfoQ:你从中学到了什么?

Kutschy:在开始使用人工智能工具之前,你必须确认其可靠性。


我们必须确保 ReportPortal 做出了正确的决定。这个决定取决于我们在测试自动化框架中如何处理堆栈跟踪信息和 ReportPortal 的配置。如果它没有按预期工作,我们就尝试调整 ReportPortal 的设置。


目前的大多数讨论都是关于如何使用人工智能来生成测试自动化代码,但我们发现,自动化测试结果分析也是一个非常适用人工智能的领域。我们可以在测试的许多场景中使用人工智能(包括生成式人工智能)。


查看英文原文:

https://www.infoq.com/news/2025/03/AI-analysis-automated-test/

2025-04-22 08:004716

评论

发布
暂无评论

预告|因“AI”而“深” 第四届OpenI/O 启智开发者大会高校开源专场25日开启!

OpenI启智社区

人工智能 开源 OpenI启智社区

大咖齐聚!OpenHarmony技术峰会豪华嘉宾阵容揭晓

OpenHarmony开发者

OpenHarmony

时代背景下的 ChatGPT,到底能帮助开发者做什么呢?

泰罗凹凸曼

JavaScript ChatGPT

react源码中的fiber架构

flyzz177

React

流批一体架构在快手的实践和思考

Apache Flink

大数据 flink 实时计算

RabbitMQ的高可用和高可靠

Java 高可用 RabbitMQ 消息中间件

比较简单的ChatGPT体验攻略!

没有用户名丶

ChatGPT会对开发领域有何影响?

FinFish

AI AIGC ChatGPT

保持热爱,奔赴山海:Apache Calcite PMC 之路

字节跳动开源

flink 开源 技术 社区 Apache Calcite

实践篇(三):如何有效评审软件架构图?

京东科技开发者

架构 后端 软件架构 企业号 2 月 PK 榜 架构评审

ChatGPT背后:从0到1,OpenAI的创立之路

OneFlow

人工智能 深度学习 openai ChatGPT

ThreadPoolExecutor源码细节探索

Java 多线程 线程池 ThreadPoolExecutor

ChatGPT搜索与推荐之间的匹配问题

图灵社区

搜索引擎 深度学习‘’ ChatGPT

预告|第四届OpenI/O启智开发者大会NLP大模型论坛强势来袭!

OpenI启智社区

人工智能 NLP 大模型 开发者大会 OpenI启智社区 ChatGPT

直播预告 | 嵌入式BI如何将数据分析真正融入业务流程

葡萄城技术团队

Teradata 离场,企业数据分析平台如何应对变革?

Kyligence

数据分析 指标中台

Apache Flink 实时计算在美的多业务场景下的应用与实践

Apache Flink

大数据 flink 实时计算

GitHub典藏版!腾讯T14级牛人亲码的分布式数据库实践,再次爆火

Java 数据库 分布式

镇江有具有资质的等保测评机构吗?在哪里?

行云管家

等保 等级保护 等保测评 镇江

react源码中的协调与调度

flyzz177

React

用javascript分类刷leetcode22.字典树(图文视频讲解)

js2030code

JavaScript LeetCode

大咖说·阿里云云效|效能治标不治本的三个陷阱的解析

大咖说

React源码分析5-commit

goClient1992

React

实时数仓Hologres新一代弹性计算组实例技术揭秘

阿里云大数据AI技术

大数据 实时数仓 弹性计算 企业号 2 月 PK 榜

react源码中的hooks

flyzz177

React

前端leetcde算法面试套路之二叉树

js2030code

JavaScript LeetCode

通过 Istio、eBPF 和 RSocket Broker 深入探索服务网格

Kian.Lee

istio cncf ebpf sidecar-free rsocket

会议总结 | 首次 Flink Batch 社区开发者会议

Apache Flink

大数据 flink 实时计算

ChatGPT能做什么?(内附体验攻略)

FinFish

AI工程化 ChatGPT

前端leetcde算法面试套路之双指针

js2030code

JavaScript LeetCode

有趣,在WSL2上运行VSCode

吴脑的键客

vscode WSL2

在自动化测试结果分析中使用AI工具_软件工程_Ben Linders_InfoQ精选文章