本文首发于公众号「软件测试艺术」,回复“软件测试教程”获取:麦子学院、黑马、小强软件测试全套学习教程!
毕业的时候我也是一个有着远大抱负(生活所迫,混口饭吃) 的年轻小伙,所以毅然选择了软件测试,从此一发不可收拾,深深爱上了它(我也不会别的啊)。
但是如果你让我跟你解释下软件测试的前世今生,那么恭喜你,我什么都不知道。为了挽回我那小小脆弱的心灵,我决定开始探究它的发展历史。
类似计算机的发展历史一样,软件测试也可以追本溯源,有他自己的发展史。本文从时间的维度来罗列一下软件测试的前世今生。
软件测试的发展,一共经历了5个发展阶段。
1957年之前-调试为主(Debugging Oriented);
1957–1978-证明为主(Demonstration Oriented);
1979–1982-破坏为主(Destruction Oriented);
1983–1987-评估为主(Evaluation Oriented);
1988–至今-预防为主(Prevention Oriented);
我要开挂了,你准备好了吗?
1975年,测试先驱 John Good Enough 和 Susan Cerhart 给出了软件测试的通用定义“证明软件的工作是正确“的活动。
1979年, Glenford J. Myers 出版的《软件测试艺术》认为测试是“发现错误而执行的活动“,该定义对软件测试工程师有着深远的影响。
1983年, Bill Hetzel 著作的《软件测试完全指南》指出“测试是以评价一个程序或者系统属性为目标的任何一种活动,测试是对软件质量的度量“,开启了软件测试不仅仅是证明软件是对或不对的,而应该进行缺陷预防。
2002年,Rick 和 Setfan在《系统的软件测试》一书中进一步对软件测试定义“测试是为了度量和提高被测软件的质量,对测试软件进行工程设计、实施和维护的整个生命周期“,该定义进一步丰富了软件测试的内容。
从以上软件测试发展过程中不难看出,软件测试从开始的“调试“,到“证明软件工作是对的”,再到“证明软件工作存在错误”,最后到“预防”,已经逐步形成了一整套体系。