近日,西贝和罗永浩因为预制菜风波,网络上沸沸扬扬,预制菜显然触动了广大网民的神经。

笔者这里不想讨论预制菜的是非,但是联想到质量领域,自动化测试和手工测试,也似乎正如预制菜和大厨现制的不同,本文就这个脑洞展开聊聊
自动化测试和“预制菜”逻辑
现代软件开发中,自动化测试无疑是提升效率和保障基础质量的利器。它像预制菜一样,具有标准化、可复制的巨大优势,可以帮助团队在快节奏的迭代中快速交付。但也同样存在预制菜一样显著的缺点。

“预制菜”的优点
正如“预制菜”的效率是其主要优点一样,自动化测试一旦脚本编写完成,可以无限次重复运行,能高效规避回归测试中的人为遗漏和执行效率问题 。能有效解决大规模、重复性验证的效率瓶颈。
预制菜的局限性
丢失新鲜度: 正如预制菜最容易让人诟病的地方在于菜肴的新鲜度,自动化测试脚本也同样存在仅能针对稳定业务场景和流程(食材)的问题,产品出现改动,自动化测试脚本也很容易失效。
添加剂: 预制菜为了保持菜肴的口感,往往会使用多种添加剂或重调味料。与此类似,自动化测试脚本中,为了保证流程的顺利执行,也往往需要用Mock或规避手段绕过一些用户场景(如验证码)
锅气的缺失: 预制菜很难具有现制菜肴的
锅气, 而自动化测试脚本验证的也永远是已知的预期结果。它很难捕捉到业务逻辑的微妙变化、新功能的一些人性化设计,更无法对 用户体验 (UX) 在体验度上产生共情。
预制菜,通过提前固定的制作流程,简单制作即可完成菜肴;而自动化测试,则利用预先编写的测试脚本,触发执行就可以快速得到测试结果。
但因为食材和制作工艺的限制,预制菜,必然也只能做到有限产品的覆盖,且只能达到基础要求,很难和高质量产品画上等号。
手工测试,测产品如烹小鲜
正如真正的美味离不开烟火气,手工测试才是在质量保障中的“大厨现制”。
探索式测试
何为“锅气”? 就是烟火氤氲变化中,厨者因食材而变,成就的美味。
测试也一样,很多产品的质量问题,也只有在测试过程的深度探索中才会表现出来。
经验丰富的测试工程师,也如大厨一般,更多会依赖丰富的经验和直觉,在产品测试(烹饪)过程中,依色、香、味和火候的不同,发现产品质量问题的蛛丝马迹。
真实用户场景下,用户的体验,也是自动化测试鞭长莫及的所在,手机app上一个按钮是否容易触控,滑动的表现是否平滑,这些都很难通过自动化脚本来量化衡量。
自动化只能判断元素是否“存在”,而不能判断它是否“好用”。
相辅相成
预制菜 其实是餐饮行业在规模化和产业化背景下必然的趋势,但它也必然不会是餐饮行业的唯一选择,当前时代也只能作为低端补充。
而自动化测试和手工测试作为质量保障手段,也一如预制和现制的区别。
我们可以将重复性、标准化的模块验证交给自动化脚本,而将深度探索、逻辑复杂和需要主观创造性的验证交给“大厨”们!
