AI专栏 | 携程“AI测试员”已上岗:每秒生成一个高质量测试用例

3小时前 阅读数 162 #综合

作者简介

Cassie Li,携程测试开发经理,关注AI提效、质量保障体系建设。

团队热招岗位:测试开发工程师Java开发工程师前端开发工程师

导读:传统测试用例编写依赖人工,存在效率低、覆盖差、一致性弱等痛点。本文揭秘如何用AI技术实现从需求文档到测试用例的一键自动生成,详解智能解析、提示词工程与端到端的架构设计,并展示实际落地效果:采纳率89.3%,用例设计时间最大减少70%。想了解AI如何颠覆测试流程?一起走进智能测试新纪元!

一、项目背景

目前测试用例编写仍大量依赖人工输出,传统的测试用例编写方式主要存在以下问题:

1)人力密集:设计高质量用例耗时耗力。

2)覆盖度不足:边界、异常、组合场景易遗漏。

3)一致性差:不同 QA 编写风格、完整性差距大。

4)知识依赖瓶颈:新人设计有效用例学习成本高。

因此,我们需要一个更加高效、智能、全面的测试用例生成方法。

二、解决方案

随着 AIGC(Artificial Intelligence Generated Content)技术的快速发展,它在质量保障行业也得到了越来越广泛的应用,为此,我们将探索利用 AI 技术解决上述痛点。

如下是我们进行方案探索的主要路程:前期先进行有效方案调研及不同LLM模型的对比,找到最适合的模型,然后经过提示词框架构建、多维度增强和优化,再到测试工作的集成,最终实现了一套融合大语言模型、经典测试理论与人机协同的端到端解决方案,来帮助我们编写测试用例,实现从 PRD 到测试用例的一键转化,最终解决人工编写效率低、测试点覆盖不足、编写规范不统一等问题。

三、技术方案介绍

3.1 系统整体架构介绍

为了提高测试用例生成的效率和质量,本项目设计了一套基于AIGC技术的智能化解决方案,实现从PRD到测试用例的自动化转化。系统架构分为以下几个关键层次:

用户层:

负责与用户进行交互,包括生成触发、用例展示和用例采纳等功能。用户可以通过直观的界面进行操作,简化了复杂的用例生成过程。

业务处理层:

基于Flask框架构建,负责处理异步任务、文件上传服务以及生成状态管理。通过异步任务处理机制,系统能够高效地处理大量请求,确保生成过程的稳定性和可靠性。

AI核心层:

采用LangChain框架,与大语言模型进行交互。该层负责构建AI处理链,实现数据流式处理和事件回调机制。

外部服务集成层:

负责与外部系统进行交互,包括用例管理平台的回调和消息推送服务。该层确保生成的测试用例能够无缝集成到现有的测试工作流中,提高整体测试效率。

3.2 提示词工程介绍

提示词是我们与大模型交互的核心,相当于模拟一个资深测试工程师的思维方式。主要流程如下:

结构化解析PRD:

系统首先对PRD文档进行结构化解析,提取出关键的需求背景、功能范围和改动点。这一步骤确保AI能够准确理解需求的核心内容。

需求信息提取:

基于解析结果,系统进一步提取与测试相关的需求信息,包括功能模块、用户交互流程和潜在的边界条件等。这些信息为后续测试场景的生成提供了基础。

测试场景生成:

系统利用大语言模型的自然语言处理能力,结合测试方法论(如边界值分析、等价类划分等),生成全面的测试场景。通过知识增强技术,系统可识别并覆盖潜在的异常和组合场景。

结构化输出测试用例:

最后,系统根据预定义的测试用例编写规范,将生成的测试场景转化为结构化的测试用例输出。这些用例包括模块名称、用例名称和基于BDD(行为驱动开发)规则的详细执行步骤描述,确保用例的可读性和一致性。

通过提示词工程,系统可高效地将复杂的需求文档转化为高质量的测试用例,显著提升测试覆盖率和用例质量。

四、项目落地效果

接下来将以一个实际案例展示该项目的生成效果,以及AI生成测试如何在测试工作流中使用起来。

4.1 生成效果展示

PRD描述

如下是截取的一个具体的需求描述

生成效果

生成测试用例截图如下,主要包括三个部分:

1)module_name:需求改动点,便于用例阅读;

 2)用例名称:由两部分组成,功能点总结及具体的场景描述;

 3)BDD描述:基于BDD规则的详细的用例执行步骤的描述;

4.2 使用流程介绍

第一步:需求管理平台一键跳转至用例管理平台

第二步:用例管理平台一键触发AI生成用例

第三步:等待生成结果通知

第四步:用例一键采纳

第五步:测试工程师介入核查场景遗漏

4.3 数据回收

为了更好的量化用例生成的效果,我们建立了一套数据回收机制,刻画在实际使用中AI生成测试用例的采纳率及测试用例的覆盖率,具体公式如下:

采纳率:评估后采纳用例 / AI生成用例 * 100%

覆盖率:评估后采纳用例 / 人工调整扩充后的总用例 * 100%

量化的数据为后续项目的持续优化提供了明确的方向和标准。

五、项目收益

5.1 相关数据

如下是某团队2周的试点数据情况,按照该团队内历史测试用例编写情况统计,一年的测试用例编写量达到了3万+多个,根据目前的数据,2.8万+个用例已经可以由AI生成,将极大的提升测试用例的编写效率。

 指标
数值
指标说明

生成需求数

30+个

上线2周生成的需求数量

生成用例总量

1500+个

AI生成的测试用例总数

采纳率

89.3%

采纳用例占总生成用例的比例

覆盖率

80.6%

采纳用例占最终用例的比例

5.2 结论

通过相关数据以及生成用例的质量,AI赋能PRD生成测试用例可以带来如下收益:

  • 效率跃升:在大需求上用例设计时间预计减少 50%,中小需求上预计时间减少 70%。

  • 质量增强:显著提升边界条件与异常场景的覆盖,有效降低遗漏风险。

  • 高可拓展性 :接入成本低,可快速推广,用例编写规则变更时,可敏捷调整,高效适应。

  • 人力增效 :测试人员能更聚焦于高价值的探索性测试,同时降低新人上手门槛,缩短培养周期。

六、未来规划

现阶段我们已取得显著成效,但持续优化迭代才能实现更大价值。未来将重点提升AI生成测试用例的采纳率和覆盖率,具体规划包括:

  • 知识增强机制: 注入业务知识库和历史测试用例,基于脱敏数据构建智能知识图谱,提升生成用例的业务适配性。

  • 多智能体协作: 采用Agent协作架构,实现测试用例生成、验证、优化的全流程自动化,显著提升采纳效率。

  • 持续迭代优化: 基于用户反馈和实际应用效果,不断优化算法模型,确保系统性能和用户体验的持续提升。

【推荐阅读】



 “携程技术”公众号

  分享,交流,成长


版权声明

本文仅作者转发或者创作,不代表旺旺头条立场。
如有侵权请联系站长删除

发表评论:

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。

热门