一说自动化测试,很多团队就想全量覆盖,结果写了两百个用例,跑了三个月没人维护。范围写清。起步阶段的重点不是多,是稳。
先挑能回本的用例
用例写了两百个,为什么没人维护?优先做登录、下单与支付这条主链路。这几步挂了,业务直接停摆,值得用自动化守住。我们给客户做的第一批用例只有十几个,覆盖注册登录以及加购下单跟支付回调和订单查询。跑一遍两分钟,每天定时跑一次,出问题当天就知道。这条链路的稳定性上来之后,再往外扩。顺序别搞反。
反例是给每个按钮都写一个用例。写起来快,维护起来要命,界面一改全挂。我们见过一个项目,八百个用例里有六百个因为改了个弹窗样式集体失败。修用例花的时间比手工测还多,团队末尾干脆不跑了。自动化的价值在回归,不在覆盖所有细节。细节该靠人看,机器看不出按钮位置不对这类问题。
让用例自己能跑起来
用例写完得能自动跑。挂在流水线上,每次提交都跑一遍,失败就拦住。这一步不做。用例就是放在那儿的代码,慢慢过期。我们习惯把环境准备也做成脚本,一条命令拉起测试环境,不依赖谁本机的配置。数据也要隔离,每个用例自己造数据、自己清理,别共用一套。共用的结果是互相干扰,排查很痛苦。
失败要有截图和日志。光说断言失败,谁也不知道错在哪。现在的工具都支持失败截图和录屏,配上控制台日志,定位快很多。我们还会把请求响应存下来,接口层的问题看这个最直接。排查成本降下来,团队才愿意看报告,否则失败通知就是噪音。一条通知点开就能定位,这套才算跑通。出问题能停吗?
别追求一步到位
自动化是慢慢长出来的,不是一次搭完的。先把主链路守住,再按缺陷分布补用例:哪个模块老出问题,就先给那个模块加。我们一般建议每修一个线上问题,就补一条用例,一年下来覆盖得挺全。这比关起门来写一个月用例实际得多。用例还要跑得快,超过十分钟的套件没人愿意等。
自动化测试常见疑问
自动化测试从哪起步
先覆盖登录、下单和支付等主链路,用少量稳定用例守住核心业务,再逐步扩展。
用例维护成本高怎么办
避免为每个按钮写用例,聚焦回归价值高的路径,细节问题仍由人工验证。
失败后怎么定位
保留失败截图、录屏与控制台日志,并记录请求响应,让失败通知点开即可定位。
总结:自动化从主链路起步,用例要能自动跑、失败能定位,按缺陷分布慢慢补,别一开始就追求全覆盖。