你在做饭时,是不是也遇到过这种情况:上次炖牛肉用了两勺酱油、小火慢炖一小时,味道刚刚好。这次做红烧肉,你直接照搬那套流程,结果咸得发苦?
这其实就跟软件开发里的‘测试用例能否复用’一个道理。在数码教程网的厨房里,我们不写代码,但我们懂逻辑。
测试用例不是菜谱,但可以当参考
测试用例就像你记下的烹饪步骤——什么火候、放多少调料、什么时候翻面。如果你做的是同类菜,比如都是炖肉类,那这些记录当然能拿来参考。但不能照单全收。
比如你有一个测试用例是验证‘水烧开需要几分钟’,环境是普通锅、水量500ml、燃气灶中火。下回你要测电压力锅,同样的水量和火力设置就不再适用。直接复用,结果必然偏差。
哪些情况可以复用?
当被测对象相似、执行条件一致时,测试用例是可以“借用”的。就像你蒸鱼和蒸蛋都需要判断‘是否蒸熟’,可以用‘插入筷子看是否有生水’这个方法作为通用检查点。
对应的测试用例结构可能是:
<test-case id="check-steamed">
<step>将筷子插入中心位置</step>
<expected>无液体渗出,食材成形不粘筷</expected>
</test-case>这种通用性高的检查逻辑,在不同场景下稍作调整就能用。
什么时候必须重写?
食材变了,做法就得变。测试对象换了技术架构,比如从网页登录变成小程序扫码登录,原来的输入框校验用例就大部分失效了。
就像你以前煮方便面要煮三分钟,现在换成鲜拉面,还按三分钟来,可能就是一坨糊。测试用例得跟着实际变化走,不能图省事硬套。
真正的高手不是记住多少用例,而是知道什么时候该用,什么时候该改。复用不是复制粘贴,而是理解之后的灵活迁移。
下次你写测试用例前,不妨问问自己:这道‘菜’我做过吗?锅还是那个锅吗?火候还能一样吗?