- 娱乐
测试流程图
时间:2010-12-5 17:23:32 作者:焦点 来源:休闲 查看: 评论:0
内容摘要:测试流程图?别误会,我不是要画一张图给你看。我是说,我桌上就摊着这么一张纸——A4大小,折了两折,边角卷起,上面画满了方框、箭头和歪歪扭扭的批注。这是我上周三下午,花了整整四个小时,给自己手头那个新功
测试流程图?测试别误会,我不是流程要画一张图给你看。我是测试说,我桌上就摊着这么一张纸——A4大小,流程折了两折,测试边角卷起,流程上面画满了方框、测试箭头和歪歪扭扭的流程批注。这是测试我上周三下午,花了整整四个小时,流程给自己手头那个新功能写的测试测试流程。 画完的流程那一刻,我盯着它看了足足两分钟。测试然后我笑了。流程不是测试满意的笑,是那种“我到底在干嘛”的苦笑。 因为那张图,跟我脑子里想的测试步骤,压根就是两回事。 我原本想的是:登录 → 点开设置 → 切换语言 → 检查文案 → 提交bug。简单,五步搞定。可一旦落到纸上,事情就变了。登录之前你得先确认测试环境是干净的,数据得重置,不然上次残留的登录态会干扰判断。点开设置之前,你得先验证导航菜单在低分辨率下有没有折叠异常。切换语言之后,不光要看文案,还得看日期格式、数字分隔符、甚至从左到右的排版会不会崩。提交bug之前,你得截图、录屏、抓日志、复现三遍确认不是偶发。 你看,一张流程图,硬生生把五步撑成了二十三步。 这让我想起上个月,隔壁组的小王跟我抱怨,说他们测试一个支付功能,流程图画得密密麻麻,光主流程就有七个分支。他当时嫌麻烦,觉得没必要,直接照着需求文档点了一遍“正常支付”就提交了。结果呢?上线第二天,用户用了一张过期优惠券,系统居然允许抵扣,还发了条“支付成功”的假通知。后端没校验,前端没拦截,测试更没覆盖。那张流程图要是早画出来,分支里明明白白写着“优惠券过期→阻断支付”,哪来这事故? 所以我现在养成了个习惯。接到测试任务,先不急着点鼠标。拿张白纸,把能想到的路径全列出来,再画箭头连起来。画的过程里,你会发现很多你以为理所当然的步骤,其实中间藏着空档。比如“用户输入密码”这一步,密码框能不能粘贴?密码错误三次之后有没有锁定提示?锁定之后是等五分钟还是得找回密码?这些细节,流程图不画到那儿,你根本想不起来去测。 当然,流程图也不是画得越细越好。我见过有人把“点击按钮后按钮颜色变灰”也单独画个框,旁边还标注“等待0.5秒”。那图看着像电路板说明书,真到执行的时候,反而没人愿意看。我的经验是,流程图的作用是帮你理清逻辑骨架,不是记录每个呼吸。重要的分支、异常路径、数据流转,这些必须画清楚。至于按钮颜色、动画时长,那是细节,留着测试时肉眼验证就行。 说到这儿,我想起那张纸的右下角,我画了个小小的星号,旁边写着:“别忘了清cookie”。那是我上次踩过的坑——测完一轮,忘了清缓存,结果第二轮的页面状态全是旧的,白测了两小时。现在我把这种教训直接画进流程图里,用红笔标出来。每次展开这张纸,第一眼看到的就是那个星号。它比任何测试用例都管用。 画完那张图,我把它折好,塞进键盘底下。第二天上午,我照着图一步步执行,果然发现了两个之前没注意到的边界问题。一个是在弱网环境下,重试按钮会连续触发两次请求;另一个是切换语言后,帮助中心的链接还是指向英文版。这两个问题,要没那张流程图,我估计测到下班都发现不了。 测试流程图这东西,说白了,就是把你脑子里的假设,变成纸上的现实。而现实,从来都比假设要复杂那么一点。就那么一点,往往就是bug藏身的地方。