软件测试之测试分类

一.按是否查看程序内部结构

1.黑盒测试(包含性能测试和功能测试):

只关心输出输入结果

1)功能测试:是黑盒测试的一方面,它检查实际软件的功能是否符合用户的需求,包括:

(1)逻辑功能测试(logic function testing)

(2)界面测试(UItesting)UI=User Interface

(3)易用性测试(usability testing):是指从软件使用的合理性和方便性等角度对软件系统进行检查,来发现软件中不方便用户使用的地方;

(4)兼容性测试(compatibility testing):包括硬件兼容性测试和软件兼容性测试

2)性能测试(包含一般性能测试,稳定性测试,负载测试和压力测试):

(1)一般性能测试:指在正常的软硬件环境下,不向被测系统施加任何压力的性能测试

(2)稳定性测试(可靠性测试 - reliability testing):指连续运行被测系统,检查系统运行时的稳定程度 

(3)负载测试-load testing:指让被测系统在其能承受的压力的极限范围内连续运行,检查系统运行时的稳定程度

(4)压力测试:是指持续不断的给被测系统增加压力,直到将被测系统压垮为止,用来测试系统所能承受的最大压力。(Validate the system or software can allowed the biggest stress.)

2.白盒测试:

研究程序里面的源代码和程序结构

二.按是否运行程序

1.静态测试:

指不实际运行被测程序,只是静态地检查程序的代码,界面以及文档可能存在的错误的过程。

静态测试包括:

1)代码测试:检查代码是否符合相应的规范或标准

2)界面测试:检查被测软件的实际界面和需求中的要求是否相符

3)文档测试:检查用户手册和需求说明是否符合用户的实际需求


2.动态测试:

指实际运行被测程序,输入测试数据,查看相应的输出结果和预期结果是否相符的过程

三.按阶段划分

(1)单元测试:对软件中最小的可测试单元或模块进行检查和验证

桩模块(stud):模拟被测模块所调用的模块;

驱动模块(driver):指模拟被测模块的上级模块,驱动模块用来接收测试数据,启动被测模块并输出结果

(2)集成测试:

是单元测试的下一阶段,将通过测试的单元模块组装成系统或子系统,再进行测试,重点是测试不同模块之间的接口部门,集成测试主要检查各个单元模块组合到一起能否协同配合,正常运行

(3)系统测试:

是指将整个软件系统看作一个整体进行测试,包括对功能,性能,软件运行的软硬件环境进行测试,系统测试的依据是《系统需求规格说明书》

(4)验收测试:

指的是在系统测试的后期,以用户测试为主,或有测试人员等质量保障人员共同参与的测试,它是软件交给用户的最后一道工序。验收测试包含α测试(内测)和β测试(公测)

1)α测试(内测):

指由用户,测试人员,开发人员等共同参与的内部测试

2)β测试(公测):

指内测后的测试,即完全交给最终用户的测试

四.其他类型的测试

(1)回归测试(regression testing):是指对软件的新的版本测试时,重复执行上一个版本测试时的用例。(When a new build or release is deployed, repeat all the test cases which has executed in the last build or release.)

(2)冒烟测试(smoke testing):是指在对一个新版本进行大规模的测试之前,先验证一下软件的基本功能是否实现,是否具备可测性。(validate the major function is deployed or not in software of system when a new build or release is implement.)

(3)随机测试(random testing):是指测试中所有的输入数据都是随机生成的,其目的是模拟用户的真实操作,并发现一些边缘性的错误。(means or all the test data is random, to validate the some edge bugs.)

你可能感兴趣的:(软件测试之测试分类)