软件测试基本概念
4.1 软件测试的定义
1.软件质量的定义:各项功能特性是否满足需求文档。
2.软件测试的定义:从前期需求文档的评审,到中期测试用例设计及测试执行,再到后期问题单的提交以及关闭等一系列测试过程。
3.软件错误的定义:与需求文档不符之处以及测试人员发现的任何影响用户体验之处,统称为BUG
4.80/20原则:80%的bug集中在20%的模块里,经常出错的模块经过修复还会出错。
80/20原则:
(1)80%的bug集中在20%的模块里,指的是复杂模块出现概率更高,软件测试应记得该关注”高危“地段。
(2)经常出错的模块经过修复还会出错,指的是经常出现bug的地方,修复后可能还是不稳定的。
4.2 软件测试的分类
常用分类方式包括按测试原理和测试阶段分类。
4.2.1 测试原理分类
一、黑盒测试
黑盒测试指的是不关注软件内部代码结构与算法,只关注这个软件外部的功能特性的测试。
二、白盒测试
白盒测试与黑盒测试相反,只关注软件内部代码结构与算法。
4.2.2 测试阶段分类
一、单元测试
单元测试主要是白盒测试,对小段代码或小的功能模块进行测试。
二、集成测试
集成测试是对集成的单元模块组合体进行测试,初期可能追溯代码内部,采用白盒测试,后期对软件部分功能进行测试,采用黑盒测试。
三、系统测试
系统测试是对完整的软件系统进行测试,即对软件系统进行全面测试,主要基于软件的六个方面:外观界面、功能、性能、安全性、易用性、兼容性。
四、验收测试
验收测试为用户进行的测试,测试软件是否满足需求,一般为黑盒测试
4.3 初级软件测试人员的定位
初级软件测试人员在大多数情况下都是功能测试人员,主要任务为测试需求文档的功能是否符合需求文档的要求。