2 软件测试基本理论
软件测试阶段划分
-
单元测试
单元测试又称模块测试,是针对软件设计的最小单位——程序模块进行正确性检验的测试工作 -
集成测试
集成测试也叫做组装测试。通常在单元测试的基础上,将所有的程序模块进行有序的、递增的测试。 -
系统测试
系统测试是在真实或模拟系统运行的环境下,检查完整的程序系统能否和系统(包括硬件、外设、网络和系统软件、支持平台等正确配置、连接,并满足用户需求。 -
验收测试
按照项目任务书或合同、供需双方约定的验收依据文档进行的对整个系统的测试与评审,决定是否接收或拒收系统-
Alpha测试(α测试)
主要是指在软件开发完成以后,在软件开发环境下,开发方对要提交的软件进行全面的自我检查与验证,可以和软件的“系统测试,"一并进行。 -
Beta测试(β测试)
在用户的应用环境下,用户通过运行和使用软件,检测与核实软件实现是否符合自己预期的要求。
-
软件测试模型
V模型
W模型
按照测试技术划分
-
黑盒测试
黑盒测试法把测试对象看成一个黑盒子,完全不考虑程序内部结构和处理过程,通过软件的外部表现来发现其缺陷和错误。
-
白盒测试
白盒测试可以把程序看成装在一个透明的白盒子里,也就是清楚了解程序结构和处理过程,检查是否所有的结构及路径都是正确的,检查软件内部动作是否按照设计说明的规定正常进行。
-
灰盒测试
介于白盒测试与黑盒测试之间的测试。
按是否需要运行代码划分
-
静态测试
静态测试是指不实际运行被测软件,而只是静态地检查程序代码、界面或文档中可能存在错误的过程。
-
动态测试
动态测试是指通过人工或使用工具运行程序进行检查、分析程序的执行状态和程序的外部表现
按软件特性分类
-
功能测试
根据产品特征、操作描述和用户方案,测试一个产品的特性和可操作行为以确定它们是否满足设计需求。
-
性能测试
评价一个产品或组件与性能需求是否符合的测试。包括负载测试、压力测试、数据库容量测试等。
返测:针对程序员修改的错误进行测试,验证错误是否被修改
回归测试:回归测试是指对软件的新版本测试时,重复执行上一个版本测试时的用例
冒烟测试:冒烟测试是指在对一个新版本进行系统大规模的测试之前,先验证一下软件的基本功能是否实现,是否具备可测性
随机测试:随机测试也称为猴子测试,是指测试中所有的输入数据都是随机产生成的,其目的是模拟用户的真实操作,随意向系统输入操作