前言
随着 AI 大模型在软件测试领域的广泛应用,提示词工程(Prompt Engineering)已成为测试工程师提升效率的关键技能。通过精准的提示词设计,我们可快速生成测试用例、优化测试场景、生成自动化脚本、以至实现智能化的测试覆盖。
那么如何更有效地在利用大模型时,让大模型更高效地协助我们得到期望的结果,好的提示词能让我们事半功倍。下文就总结下,对测试工程师而言,怎么编写出好的提示词框架
拆分复杂需求,准确描述问题
AI 大模型的效果高度依赖输入提示词的清晰度,也就是尽可能减少二义性。所以在输入提示词时,应尽可能将复杂任务拆解为具体需求,例如:
•场景化的描述:明确测试目标(如“生成登录功能的边界值测试用例”),而非模糊指令(如“帮我写测试用例”)。•约束条件:添加格式要求(如“以表格形式输出”)、优先级(如“仅包含高风险场景”)或技术限制(如“不涉及第三方接口”)。•示例引导:可以提供示例数据或模板,帮助模型理解期望的输出结构。
利用结构化框架,提升输出稳定性
通过定义结构化的提示词框架,可以约束模型行为,并减少随机性干扰:
1.角色设定:指定模型扮演专业角色(如“你是一位资深测试专家,擅长设计高覆盖率的测试场景”)。2.分步指令:将复杂任务分解为多步骤(如“第一步:分析需求文档;第二步:识别关键路径;第三步:生成用例”)。3.思维链(Chain-of-Thought):虽然目前很多模型都提供了深度思考能力,但通过提示词引导模型的分析,可以简化模型的思考推理方向。例如“请先分析用户操作流程,再重点针对异常场景生成测试用例”。
渐进式的迭代优化,持续改进提示词
大模型通常会保留对话上下文,针对每次反馈的结果,应不断校正,逐渐向最佳输出靠拢
•反馈修正:对模型输出中的错误及时指正(如“第 2 条用例未覆盖超时场景,请补充”),并要求重新生成。•参数调整:控制输出长度(如“请用 50 字以内描述”)、温度系数(Temperature)以平衡模型的创造性与准确性。•交叉比对:目前开放大模型有很多,能力不一,对于
常见的一些校正场景:
问题 | 原因 | 改进方法 |
输出过于宽泛 | 需求描述模糊 | 添加具体场景、格式、优先级约束 |
结果重复或冗余 | 未明确限制输出范围 | 排除不需要的场景(如指定“仅输出未覆盖的边界值场景”) |
技术术语错误 | 模型缺乏领域知识 | 提供术语表或指定角色(如“金融系统测试专家”) |
案例分析
基于以上原则,以我们要测试 https://www.saucedemo.com 这个网站的购物流程为例,要打大模型帮助我们生成一系列测试用例,提示词框架可以按下面的方式设定:
假设你是一名经验丰富的软件测试工程师,负责对电商网站 https://www.saucedemo.com/ 的核心购物流程进行端到端的功能测试。
任务:为以下用户场景生成详细的、高优先级的正向和反向测试用例。重点关注从商品选择到成功下单的完整流程。
被测网站: https://www.saucedemo.com/
测试用户凭据:
•标准用户(StandardUser): standard_user / secret_sauce
•有问题的用户(ProblemUser): problem_user / secret_sauce (用于观察特定错误行为)
核心购物流程步骤:
1.用户登录
2.浏览商品列表(InventoryPage)
3.选择至少两件不同商品并添加到购物车
4.查看购物车(CartPage)
5.在购物车页面验证商品信息(名称、数量、价格)和总价
6.进入结账信息页面(Checkout:YourInformation)
7.填写有效的结账信息(姓、名、邮政编码)
8.进入结账概览页面(Checkout:Overview)
9.在概览页面验证商品信息、总价(含税)
10.完成购买(Checkout:Complete!)
11.验证订单成功信息
测试用例要求:
•正向测试用例:覆盖使用标准用户成功完成购物流程的每个步骤,确保功能按预期工作。
•反向测试用例:
•尝试在结账信息页面输入无效数据(例如,姓、名、邮编为空或格式错误)。
•尝试在购物车为空时进行结账。
•(可选)使用 problem_user 登录,观察并记录在购物流程中可能出现的异常行为,特别是商品图片、添加购物车或结账环节。
输出要求:
•每个测试用例应包含:用例 ID (TC_SAUCE_SHOP_XXX)、测试描述、前置条件(如已登录并添加商品)、测试步骤(清晰、可执行)、预期结果、实际结果(预留填写)、状态(预留填写)、优先级(高/中/低)。
•优先生成高优先级的测试用例。
输出格式:请将测试用例以Markdown表格形式输出,包含以下列:用例 ID,测试描述,前置条件,测试步骤,预期结果,优先级。
约束说明:
•假设税率为8%。
•关注 UI 元素的交互和页面跳转的正确性。
•如果对某些特定元素的 ID 或Class不确定,可以使用通用的描述,例如“点击添加到购物车按钮”或“输入姓名字段”。
以上提示词比较好地对应了相关的提示词框架原则:
•明确的角色:"假设你是一名经验丰富的软件测试工程师..."•清晰的任务:"为以下用户场景生成详细的、高优先级的正向和反向测试用例。重点关注从商品选择到成功下单的完整流程"•充分的上下文信息: 被测 URL、用户信息、用例侧重点、税率假设•指定输出格式:"请将测试用例以 Markdown 表格形式输出,包含以下列:用例 ID
, 测试描述
, 前置条件
, 测试步骤
, 预期结果
, 优先级
。"•明确的具体要求和约束:用例和输出的具体要求,•引导思考方向:使用 problem_user 生成异常用例
最终通过这样的提示词,通过 Deepseek,我们会得到如下一份生成的用例:
高优先级核心购物流程测试用例
用例 ID | 测试描述 | 前置条件 | 测试步骤 | 预期结果 | 优先级 |
正向测试用例 | |||||
TC_SAUCE_SHOP_001 | 标准用户成功登录并进入商品列表页 | 无 | 1. 访问 | 登录成功,跳转至商品列表页(Inventory Page) | 高 |
TC_SAUCE_SHOP_002 | 添加两件不同商品到购物车并验证数量 | 用户已登录 | 1. 在商品列表页选择两件不同商品,分别点击“添加到购物车”按钮 | 购物车图标数量更新为 2,且两件商品均显示在购物车页面 | 高 |
TC_SAUCE_SHOP_003 | 购物车页面验证商品信息和总价(不含税) | 用户已添加两件商品到购物车 | 1. 点击购物车图标进入购物车页面 | 商品信息正确,总价显示为两件商品价格之和 | 高 |
TC_SAUCE_SHOP_004 | 完成有效结账信息并验证含税总价 | 用户已进入结账信息页面 | 1. 在结账信息页面输入有效姓、名、邮编(如:John/Doe/12345) | 跳转至结账概览页面,总价含 8%税且计算正确 | 高 |
TC_SAUCE_SHOP_005 | 完成购买并验证订单成功信息 | 用户已进入结账概览页面 | 1. 点击“完成”按钮 | 显示“THANK YOU FOR YOUR ORDER”成功信息,返回商品列表页 | 高 |
反向测试用例 | |||||
TC_SAUCE_SHOP_006 | 结账信息页面姓名为空时提交表单 | 用户已进入结账信息页面 | 1. 留空姓名字段,输入有效邮编(如:12345) | 提示“First Name is required”,阻止跳转 | 高 |
TC_SAUCE_SHOP_007 | 结账信息页面邮编格式错误(如非数字) | 用户已进入结账信息页面 | 1. 输入有效姓、名,邮编为“ABC12” | 提示“Postal Code is invalid”,阻止跳转 | 高 |
TC_SAUCE_SHOP_008 | 购物车为空时尝试结账 | 用户已登录且购物车为空 | 1. 点击购物车图标进入购物车页面 | 提示“Cart is empty”或阻止跳转至结账页面 | 高 |
Problem User 测试用例 | |||||
TC_SAUCE_SHOP_009 | Problem User 添加商品时图片显示异常 | Problem User 已登录 | 1. 浏览商品列表页 | 商品图片显示异常(如空白图、错误图片) | 中 |
TC_SAUCE_SHOP_010 | Problem User 结账时总价计算错误 | Problem User 已添加商品到购物车 | 1. 完成结账流程至概览页面 | 总价计算错误(如未含税或计算值偏差) | 中 |
补充说明
1.优先级分配:核心流程(登录、添加商品、结账)和关键异常场景(空字段、无效数据)设为高优先级。2.Problem User:用于验证特定异常行为(如 UI 渲染错误或逻辑漏洞)。3.实际结果/状态:执行时需根据实际观察填写(如“通过”、“失败”或“阻塞”)。4.税率计算:假设商品总价为 $X
,含税总价应为 X * 1.08
,保留两位小数(如 $21.99 * 1.08 = $23.75
)。
大模型&AI产品经理如何学习
求大家的点赞和收藏,我花2万买的大模型学习资料免费共享给你们,来看看有哪些东西。
1.学习路线图
第一阶段: 从大模型系统设计入手,讲解大模型的主要方法;
第二阶段: 在通过大模型提示词工程从Prompts角度入手更好发挥模型的作用;
第三阶段: 大模型平台应用开发借助阿里云PAI平台构建电商领域虚拟试衣系统;
第四阶段: 大模型知识库应用开发以LangChain框架为例,构建物流行业咨询智能问答系统;
第五阶段: 大模型微调开发借助以大健康、新零售、新媒体领域构建适合当前领域大模型;
第六阶段: 以SD多模态大模型为主,搭建了文生图小程序案例;
第七阶段: 以大模型平台应用与开发为主,通过星火大模型,文心大模型等成熟大模型构建大模型行业应用。
2.视频教程
网上虽然也有很多的学习资源,但基本上都残缺不全的,这是我自己整理的大模型视频教程,上面路线图的每一个知识点,我都有配套的视频讲解。
(都打包成一块的了,不能一一展开,总共300多集)
因篇幅有限,仅展示部分资料,需要点击下方图片前往获取
3.技术文档和电子书
这里主要整理了大模型相关PDF书籍、行业报告、文档,有几百本,都是目前行业最新的。
4.LLM面试题和面经合集
这里主要整理了行业目前最新的大模型面试题和各种大厂offer面经合集。
👉学会后的收获:👈
• 基于大模型全栈工程实现(前端、后端、产品经理、设计、数据分析等),通过这门课可获得不同能力;
• 能够利用大模型解决相关实际项目需求: 大数据时代,越来越多的企业和机构需要处理海量数据,利用大模型技术可以更好地处理这些数据,提高数据分析和决策的准确性。因此,掌握大模型应用开发技能,可以让程序员更好地应对实际项目需求;
• 基于大模型和企业数据AI应用开发,实现大模型理论、掌握GPU算力、硬件、LangChain开发框架和项目实战技能, 学会Fine-tuning垂直训练大模型(数据准备、数据蒸馏、大模型部署)一站式掌握;
• 能够完成时下热门大模型垂直领域模型训练能力,提高程序员的编码能力: 大模型应用开发需要掌握机器学习算法、深度学习框架等技术,这些技术的掌握可以提高程序员的编码能力和分析能力,让程序员更加熟练地编写高质量的代码。
1.AI大模型学习路线图
2.100套AI大模型商业化落地方案
3.100集大模型视频教程
4.200本大模型PDF书籍
5.LLM面试题合集
6.AI产品经理资源合集***
👉获取方式:
😝有需要的小伙伴,可以保存图片到wx扫描二v码免费领取【保证100%免费】🆓