测试用例怎么写,很多人第一次接到任务时,只会写“打开页面,输入内容,点提交”。这样到了真正测试时,别人还是不知道该准备什么账号、什么数据算有效、出现什么结果才叫通过。把测试对象、前置条件和数据、操作步骤、预期结果与记录这 4 个要素分开写,一条用例才会成为可以重复核对的说明,而不只是自己看得懂的备忘。

测试用例不是把“成功一次”记下来
测试用例的作用,是让不同的人在相近条件下验证同一个行为。它既要覆盖用户顺利完成任务的路径,也要让人能看出条件不满足、数据不对、重复操作或权限不同的时候,产品应该怎样表现。只写成功路径,往往会把真正容易返工的地方留到开发完成以后才发现。
新手不必一开始就把所有字段堆满。用例编号、优先级、负责人、版本、实际结果等字段会随着团队流程增加,但先把一条用例的对象、准备、动作和预期说清楚,后面补充管理信息才不会变成填表游戏。
测试用例怎么写?先补齐这 4 个要素
- 测试对象与范围:先写清这次要验证哪一个功能、针对哪类用户、要回答什么问题。例如不是笼统地写“订单功能”,而是写“已登录用户取消一笔未支付订单后,订单状态和列表展示是否一致”。范围清楚,才知道什么不属于这条用例。
- 前置条件与测试数据:进入测试前账号处于什么状态,系统里要准备哪些订单、库存或权限,设备和网络有没有特殊要求,都要写出来。同样的步骤在“未登录”“订单已付款”“没有取消权限”三种条件下,结果可能完全不同。
- 可以复现的操作步骤:按用户实际会做的顺序拆开写,每一步只放一个明确动作。避免“正常操作后查看结果”这类模糊表述;应写成“打开订单详情,选择取消原因,确认取消,再返回订单列表”。别人照着做,才能判断问题出在什么位置。
- 预期结果与实际记录:预期结果要能观察和核对,例如页面提示、订单状态、可继续执行的动作和数据变化。执行后再记录实际结果、截图或复现条件。若结果不符合预期,描述事实和条件,不要先把原因当成结论写进去。
| 要素 | 以“取消未支付订单”为例 | 容易漏掉的点 |
|---|---|---|
| 测试对象 | 用户取消一笔未支付、未发货的订单 | 把不同支付或发货状态混进同一条用例 |
| 准备条件 | 已登录账号;账号下有一笔符合条件的订单 | 没有交代账号权限和订单初始状态 |
| 操作步骤 | 进入订单详情,选择原因,确认取消,返回列表 | 遗漏确认弹窗、返回入口或重复点击 |
| 预期与记录 | 状态、提示和列表展示一致;记录实际结果 | 只写“取消成功”,没有可核对的表现 |
先挑一个范围小、规则清楚的功能,把对象、数据、步骤和预期结果整理成第一条可执行用例。
先把原型和规则摆出来,再整理测试点
墨刀官方当前展示 AI 原型、产品文档、测试用例、流程图和思维导图等生成方向。需要把需求变成测试清单时,可以先把已确认的用户任务、页面状态、规则来源和边界条件整理成清楚输入,再根据当前页面可用能力生成一版草稿。生成内容适合帮助梳理遗漏点,不能替代产品、研发、测试或业务负责人对规则的确认。
输入越接近真实场景,草稿越容易进入可讨论状态。不要只写“帮我写订单测试用例”,而要说明对象、允许和禁止的条件、涉及的状态以及这次不处理什么。涉及支付、个人信息、库存、权限或对外承诺时,还应回到正式规则、接口约定和合规要求逐项确认。
功能:用户取消未支付订单
用户:已登录且拥有该订单的普通用户
允许条件:订单未付款、未发货
需要验证:入口、确认提示、取消后的订单状态和列表展示
不在本轮范围:退款到账、客服人工处理、后台库存策略
输出要求:按前置条件、步骤、预期结果分条列出,并标出待业务确认的问题
生成或整理后,至少做这 3 次人工核对
- 回到需求来源核对:每个预期结果都应能追溯到已确认的规则、原型或业务决定。工具给出的常见做法,不应自动变成你们的产品规则。
- 把成功和受阻情况分开看:除了正常完成,也分别检查信息缺失、重复操作、网络中断、权限不够和状态已变化时的表现。不要把完全不同的条件塞到一句“异常情况”里。
- 让执行的人试着照读一遍:把用例交给没有参与撰写的人操作一次。若他仍要反复追问数据、入口或通过标准,说明这条用例还需要补全。
一份可用的测试用例不承诺产品一定没有问题,它只是把该问的问题、该准备的条件和该对照的结果放到同一处。先从一个功能的小范围用例开始,确认团队的字段和写法后,再逐步扩展到更多场景,通常比一次性铺开所有页面更可靠。
已经明确功能范围和规则来源时,就把第一条用例写成别人也能照着执行、照着核对的版本。
常见问题
Q:测试用例一定要写得很长吗? A:不一定。重点是执行者能看懂测什么、先准备什么、怎样操作和什么结果算通过。小功能可以短,但不能省掉关键条件。
Q:产品经理也要写测试用例吗? A:团队分工不同。产品经理至少应把目标、规则、状态和验收标准说清;由谁沉淀完整用例,可按团队流程决定。
Q:AI 生成的测试用例能直接交付吗? A:不能直接当作最终结论。应先核对需求来源、权限、数据、异常状态和真实业务规则,再由负责人员确认。
Q:第一次该从哪里开始写? A:选一个用户能在几步内完成的功能,从一条正常路径和一条条件不满足的路径开始,先把团队的写法跑通。
