我用ChatGPT把回归测试从3天压到3小时,提示词全公开

简介: 本文分享如何用ChatGPT优化电商后台回归测试:通过提示词引导,实现用例梳理、自动化脚本生成与日志分析三步提效,将3天人工测试压缩至3小时。强调其辅助定位而非替代人力,聚焦释放工程师精力于高价值工作。

先说结论:不是标题党。

上个月我们发版前最后一次回归,从早上9点干到晚上11点,三个人轮着点,点到后面眼睛都花了。结果还是漏了一个优惠券叠加的边界场景,上线第二天客服就炸了。

那天晚上我就在想,这破事儿能不能让ChatGPT干。

试了两周,现在回归测试基本3小时收工。不是全自动,但至少不用人肉当点读机了。

下面直接把我的用法和提示词全倒出来,能不能复用你们自己判断。

先说说我们之前的蠢办法
项目是电商后台,200多个接口,前端页面40多个。每次发版前回归测试清单有180多条用例,大部分是重复的:登录、下单、退款、优惠券、库存扣减……

之前就是三个人分,一人60条,手动点。点完还要对数据,看日志,录结果。三天下来人都傻了。

最关键的是,人一累就会偷懒。有些用例看着“应该没问题”就跳过了,结果偏偏就是这种地方出事儿。

我是怎么用ChatGPT的
先说清楚,ChatGPT不能帮你点页面。但它能干三件事:

帮你把测试用例梳理清楚,找出重复和遗漏
帮你生成自动化脚本(Python + Selenium/Requests)
帮你分析失败日志,快速定位问题
我一个个说。

第一步:让ChatGPT帮你“瘦身”测试用例
我把180条用例粘贴进去,用这个提示词:

你是一个资深测试工程师。以下是我们项目的回归测试用例清单,格式为“编号 | 模块 | 用例描述 | 预期结果”。

请帮我做三件事:

  1. 找出功能重复或高度相似的用例,合并建议;
  2. 找出覆盖缺失的边界场景(比如并发、空值、极值、网络异常);
  3. 按“核心链路 / 重要分支 / 边缘场景”重新分级,并给出每级的建议执行频率。

用例清单:
[粘贴你的用例]
它给我输出了十几条合并建议,还指出了三个我压根没想到的边界:优惠券并发核销、退款时库存回滚的时序、以及弱网下重复提交。

这一步省了我大概半天的手工梳理时间。

第二步:让ChatGPT写自动化脚本
不是所有用例都值得自动化。我挑了三类:

接口层面的核心链路(下单、支付回调、退款)
数据一致性校验(库存、优惠券、积分)
重复性高的页面操作(登录、搜索、列表翻页)
提示词长这样:

你是一个Python自动化测试专家。请根据以下接口文档和测试用例,生成基于 pytest + requests 的接口测试脚本。

要求:

  1. 使用 fixture 管理登录态和测试数据;
  2. 每个用例独立可运行,不依赖执行顺序;
  3. 断言要具体,不要只断言 status_code;
  4. 对数据库的校验用 SQL 查询,不要直接查接口返回;
  5. 异常场景要 mock 超时和 500 响应。

接口文档:
[粘贴Swagger或手写文档]

测试用例:
[粘贴用例]
它生成的脚本大概能直接用70%,剩下的30%是业务字段和数据库连接需要我改。但比起从零写,快了不止一点。

这一步省了我大概一天半。

第三步:失败日志丢给ChatGPT定位
回归跑完总有几个红的。以前是挨个翻日志,现在直接把报错和上下文丢进去:

以下是一个接口测试的失败日志和请求响应。请帮我:

  1. 判断是代码bug、测试数据问题、还是环境问题;
  2. 如果是代码bug,指出最可能出问题的模块和函数;
  3. 给出下一步排查建议。

失败日志:
[粘贴日志]

请求参数:
[粘贴请求]

响应内容:
[粘贴响应]
它不能100%准确,但能帮我快速排除掉“测试数据脏了”“环境没刷新”这种低级问题。真正需要开发看的bug,我直接把它的分析附在工单里,开发也省事。

这一步省了我大概半天。

效果对比
环节
之前
现在
用例梳理
半天
1小时
脚本编写
1.5天
3小时
执行+排查
1天
1.5小时
合计 3天 约3小时
当然,第一次搭建的时候花了两天调提示词和改脚本。但后面每次回归都在复用,边际成本趋近于零。

几个坑,你们别踩

  1. 不要让它写UI自动化脚本。 页面元素定位它写得一塌糊涂,改的时间比自己写还长。UI层建议用低代码工具或者录制回放。

  2. 数据库连接、密钥这些别粘贴进去。 用占位符代替,自己本地替换。

  3. 它生成的断言经常“太松”。 比如只断言 code == 0,你要手动加字段级校验。

  4. 提示词要迭代。 我上面给的版本是改了五六版之后的。第一版它输出的东西根本不能用,你得根据它的输出不断调整约束条件。

最后说句实在的
ChatGPT不是银弹。它不能帮你点页面,不能帮你连数据库,也不能替你判断业务逻辑对不对。

但它能帮你把重复劳动压缩,让你把时间花在真正需要人脑的地方:设计边界场景、分析复杂bug、判断风险。

回归测试从3天到3小时,省下来的时间我没摸鱼,拿去补了之前一直没空写的契约测试。

这才是重点。

相关文章
|
7天前
|
存储 人工智能 弹性计算
最新版阿里云AI产品与云产品组合购活动:精选"云+AI"产品组合,组合购享超值优惠价
阿里云推出的云产品组合购活动包括“AI产品组合购”与“云产品组合购”双板块,活动围绕“云+AI”深度融合思路,将Token Plan、Qoder CN、轻量应用服务器、AI建站、视频点播等核心产品打包成十余类场景化套餐,低至3.9折,价格覆盖1元域名到数百元企业级方案,全面覆盖个人开发者、中小企业从入门体验到生产级应用的全场景需求。
120 21
|
存储 设计模式 缓存
Python中的装饰器:代码的魔法增强剂####
本文将深入探讨Python语言中一个强大而灵活的特性——装饰器。不同于传统的函数调用,装饰器提供了一种优雅的方式来扩展或修改函数行为,无需直接修改原函数代码。我们将通过实例分析,揭示装饰器的定义、工作原理及其在实际项目中的应用价值,旨在帮助开发者更好地理解和利用这一高级功能,提升代码的可读性与维护性。 ####
|
Java 开发者
Java中的异常处理:从基础到高级
在Java的世界中,异常处理是一项不可或缺的技能。它不仅关乎程序的稳定性和健壮性,更体现了开发者对代码质量的追求。本文将带你深入理解Java异常处理机制的核心概念,从基本的try-catch语句到高级的自定义异常和异常链追踪,我们将一起探索如何优雅地处理错误,确保程序即使在面对不可预见的情况时也能保持优雅的姿态。
288 38
|
设计模式 前端开发 开发工具
探索iOS开发:从新手到专家的旅程
本文将带领读者深入iOS开发的海洋,从最基础的设置和语言学习开始,直至掌握高级框架和最佳实践。我们将通过实际案例来揭示如何构建高效、响应式且用户友好的iOS应用,同时探讨开发者社区的重要性以及如何保持技术的最新性。无论你是初学者还是希望提升技能的开发者,这篇文章都将为你提供宝贵的指导和启发。
|
人工智能 搜索推荐 智能硬件
智能家居技术的未来:从自动化到人工智能
在这篇文章中,我们将深入探讨智能家居技术的发展趋势。从早期的自动化设备到现在的人工智能驱动系统,智能家居技术已经取得了巨大的进步。然而,这只是一个开始。未来的智能家居将更加智能,更加个性化,更加环保。我们将详细讨论这些趋势,并通过实例来展示它们如何改变我们的生活。
347 36
|
Kubernetes Cloud Native 持续交付
云原生技术在现代企业中的应用与挑战
随着数字化转型的浪潮席卷全球,云原生技术成为推动企业IT架构现代化的关键力量。本文将深入探讨云原生的核心概念、关键技术及其在现代企业中的实际应用场景。同时,我们也将分析企业在采纳云原生过程中可能遇到的挑战,并提供相应的应对策略。通过案例分析和数据支持,本文旨在为读者提供一份关于云原生技术应用的全景式指南,以促进企业更高效地利用云计算资源,加速业务创新和价值实现。
279 36
|
监控 供应链 物联网
新技术革命下的未来社会:区块链、物联网和虚拟现实的融合与创新
随着科技的不断进步,新兴技术如区块链、物联网(IoT)和虚拟现实(VR)正在逐渐融入我们的生活。本文将探讨这些技术的发展趋势和应用场景,以及它们如何相互融合,共同推动未来社会的发展。
351 35
|
存储 Java API
探索Java中的Stream API: 提升数据处理的效率与优雅
在Java的海洋中,Stream API如同一股清流,为数据处理注入了新的活力。本文将深入探讨Stream API的核心概念、操作以及它如何改变我们编写和理解代码的方式。通过实际案例,我们将揭示这一现代编程范式如何简化集合处理,提高代码的可读性与性能。
353 34
|
人工智能 安全 数据安全/隐私保护
移动应用开发的未来趋势与挑战
在数字化浪潮的推动下,移动应用已成为日常生活和商业活动的核心。本文将探讨移动应用开发的最新趋势,包括跨平台框架的崛起、人工智能的集成以及隐私保护的重要性。同时,我们将分析开发者面临的挑战,如设备碎片化、安全性问题和用户期望的不断提升。最后,文章将提出一些策略,帮助开发者应对这些挑战,创造更优质的用户体验。
215 33
|
人工智能 安全 5G
探索移动应用开发的未来趋势
随着智能手机的普及和移动技术的飞速发展,移动应用开发已经成为一个充满活力和创新的领域。从早期的简单工具和游戏,到如今的复杂社交平台、金融科技应用以及增强现实体验,移动应用已经深入人们生活的方方面面。本文将探讨移动应用开发的新趋势,包括跨平台框架的兴起、人工智能的集成、移动支付安全的新挑战,以及5G技术对移动应用性能和应用范围的影响。通过这些讨论,我们不仅能够预见未来移动应用的发展轨迹,还能洞察开发者如何适应这些变化以满足用户的需求和期望。
278 33