信息技术业已成为国家经济发展的支柱产业之一,作为其重要组成部分的软件产业取得了长足的发展,并且越来越广泛地应用于国民经济和国防建设的各个领域。然而,在实际应用中,由于计算机软件缺陷而造成计算机系统故障并导致严重后果的事例屡见不鲜。因此,如何保证软件产品的质量就成了必须解决的一个问题,而对软件进行有效的测试就是解决软件质量问题的方法之一。
软件测试是软件质量保证的关键步骤。软件测试研究的结果表明:软件中存在的问题发现越早,其软件开发费用就越低;在编码后修改软件缺陷的成本是编码前的10倍,在产品交付后修改软件缺陷的成本是交付前的10倍;软件质量越高,软件发布后的维护费用越低。另据对国际著名IT企业的统计,它们的软件测试费用占整个软件工程所有研发费用的50%.以上。
中国软件企业在软件测试方面与国际水准相比仍存在较大差距。首先,在认识上重开发、轻测试,忽略了如何通过流程改进和软件测试来保证产品或系统的质量,也没有认识到软件项目的如期完成不仅取决于系统设计水平和代码实现能力,而且还取决于设计、代码、文档等各方面的质量。其次,在管理上随意、简单,没有建立规范、有效的软件测试管理体系。另外,缺少自动化工具的支持,大多数企业在软件测试时并没有采用软件测试管理系统。所以对软件企业来说,不仅要提高对软件测试的认识,同时要建立独立的软件测试组织,采用先进的测试技术,充分运用测试工具,不断改善软件开发流程,建立完善的软件质量保障的管理体系。只有这样,才有可能达到软件开发的预期目标,降低软件开发的成本和风险,提高软件开发的效率和生产力,确保及时地发布高质量的软件产品。
我们将多年来所积累的软件测试经验与技术实践整理成书,与大家分享,希望成为软件测试的实际应用参考书。同时,也将作者在大学软件学院的软件测试专业课、在全国性软件测试和质量保证高级培训班及其他培训班等的授课经验与体会,融入本书之中。
本书参考教学时数为40~50学时,全书共分为7章:第1章讨论了软件测试的一些基本概念;第2章介绍了软件开发过程及特征;第3章介绍了软件测试的基础知识;第4章详细描述了面向对象测试技术;第5章讨论了目前较为流行的Web系统测试技术;第6章介绍软件测试的组织与管理;第7章通过一个实例,给出了完整的与软件测试相关的文档。本书最后附有软件测试术语。第1章和第3章由抚顺职业技术学院的王爱平老师编写,第2章和附录A由抚顺职业技术学院的刘凤玲老师编写,第4章和第5章由青岛职业技术学院的徐占鹏老师编写,第6章和第7章由沈阳师范大学职业技术学院的李天辉老师编写。抚顺职业技术学院的张海伟老师参与了本书的编写及校对工作。
本书在编写过程中,参阅了很多国内外同行的著作和文章,汲取了该领域最新的研究成果。在此,对这些成果的作者表示深深的感谢!
由于水平和时间的限制,书中不可避免地会出现一些错误,请广大读者不吝赐教。