前言

随着信息技术的高速发展,各种各样的软件产品越来越多,软件产品的结构越来越复杂,为保证软件产品的质量,软件测试工作越来越重要。现在,软件测试已经成为软件开发过程中必不可少的一项工作。最初的软件测试只是开发人员调试自己的代码,后来软件测试逐渐发展成为了一个独立的行业。在国内,软件测试还处于起步阶段,软件测试技术体系尚不成熟,人才缺口较大。在这样的背景下,我们编写了本书让更多想踏入软件测试行业的读者更快地入门。

◆ 为什么要学习本书

现在市面上有很多软件测试教材,但这些教材很多只是纯理论讲解,内容冗余烦琐,很多读者学习之后还是很茫然。基于上述现象,我们推出这本软件测试的教材。本书更加注重理论与实践的结合,旨在让读者掌握软件测试的理论知识与动手实践的能力。

本书在讲解时将软件测试的相关知识以辐射形式平铺展开,布局合理、结构清晰。针对每一个测试种类,本书都配备了测试项目,通过分析测试项目和测试工具的使用,让读者以最快的速度掌握软件测试理论知识并具备实践能力。

◆ 如何使用本书

本书将软件测试的相关知识分为7个知识块展开,全书共分为9章,具体介绍如下。

第1章介绍软件测试的基础知识,包括软件生命周期、软件开发模型、软件质量概述、软件缺陷管理、软件测试概述、软件测试模型、软件测试流程等。通过本章的学习,读者可以了解软件测试的概念以及软件测试在整个软件开发过程中的作用。

第2~3章介绍黑盒测试方法和白盒测试方法。黑盒测试方法包括等价类划分法、边界值分析法、因果图法、决策表法和正交实验设计法;白盒测试方法包括逻辑覆盖法、插桩法等。通过这两章的学习,读者可以掌握黑盒测试与白盒测试的概念和常用方法,以及两者之间的区别。

第4章介绍性能测试,包括性能测试概述、性能测试的指标、种类、性能测试的流程及工具,最后通过一个项目测试来演示性能测试过程。通过本章的学习,读者会对性能测试有一个整体的认识,并掌握性能测试工具LoadRunner的使用。

第5章介绍安全测试。安全测试是一个比较复杂的测试领域。本章介绍了安全测试概述、常见的安全漏洞、渗透测试、常见的安全测试工具,最后通过测试传智图书库的安全性来演示安全漏洞扫描分析过程。通过本章的学习,读者可以了解安全测试的相关知识,以及相关安全测试工具的使用。

第6章介绍自动化测试,包括自动化测试概述、自动化测试的常见技术、自动化测试的常用工具及持续集成测试,最后通过一个实例演示自动化测试过程。通过本章的学习,读者可以对自动化测试有一个全面的理解与认知,掌握自动化测试技术及常用工具的使用。

第7章介绍了移动App测试,包括移动App概述、移动App测试要点、移动App测试流程及工具,最后通过一个项目演示移动App测试过程。通过本章的学习,读者会对移动App测试有一个全新的认识,掌握移动App测试要点及测试工具Appium的使用。

第8~9章介绍各种软件测试文档的编写。

在学习的过程中,读者应勤思考、勤总结,并动手实践书中提供的项目测试,若在学习的过程中遇到无法解决的困难,建议读者莫要纠结于此,继续往后学习。

◆ 致谢

本书的编写和整理工作由传智播客教育科技有限公司完成,主要参与人员有吕春林、高美云、薛蒙蒙、李卓等,全体人员在近一年的编写过程中付出了很多辛勤的劳动,在此一并表示衷心的感谢。

◆ 意见反馈

尽管我们付出了最大的努力,但书中难免会有不妥之处,欢迎读者朋友们来信提出宝贵的意见,我们将不胜感激。您在阅读本书时,如发现任何问题或有不认同之处,可以通过电子邮件与我们取得联系。

请发送电子邮件至itcast_book@vip.sina.com。

黑马程序员

2019年5月于北京