知乎上给了一个相对生动形象好理解的例子,请看故事……
具体场景:陪老婆逛商场!
黑盒测试:
老婆从商场的某一个入口进入,你在商场外面等待,并不知道商场内发生了什么,只知道正确的结果是,老婆带着一堆商品从某一个出口(可以与入口相同)出来。
这是原定正确的情况,不出错我们就不需要管商场里面发生了什么,否则,在多次逛商场(多次黑盒测试)之中,发生无法达到原定正确的情况,例如老婆与人争执、老婆没带钱、老婆有问题需要与自己协商等情况的发生,就需要测试人员进行检查了。
白盒测试:
老婆从商场的某一个入口进入,你随着陪同进入商场,全程陪伴,观察老婆购物的每个细节,了解其走过的每一步,发生的每个小情况(我。。。已经写不下去了。。。),然后,你抱着一堆商品陪着老婆从某一个出口出来。
单元测试:
老婆进入商场后,专门盯着某一个专卖店,查看其是否有新品、是否有活动等,一天去三次,一周去三天,一月去三周,达到对该专卖店了如指掌,任何细节都确保万无一失之后,再盯下一个专卖店……
压力测试:
老婆组团进入商场进行大量扫货,每天进行,持续一段时间,看商场是否顶得住,是否会出现断货、服务员暴走、刷卡机宕机等问题。
性能测试:
这个概念比较广,商场稳定性,如能否做到每天开业、24小时开业;商场安全性,保安能否保护顾客安全、防火防盗措施如何。
因此,其实软件测试并不是什么新鲜的概念,我们在现实生活中,一直在对各大商场进行“集成测试”,那么多的商场被各种苛刻的测试所淘汰。各位都是伟大的测试人员,并且,测试是永久存在的,不要幻想产品发布那天的到来。
所以,不要以为测试工作只属于软件工程,太天真了,测试的魔爪是谁也逃不脱的!