测试分类

软件测试类型按开发阶段分为单元测试,集成测试,确认测试,系统测试,验收测试。
(1)单元测试
单元测试又称为模块测试,是针对软件设计的最小单位程序模块进行正确性检查的测试工作,单元测试需要从程序内部结构出发设计测试用例,多个模块可以平行地独立进行单元测试。
(2)集成测试
又称为组装测试或联合测试,在单元测试的基础上,需要将所有模块按照概要设计说明书和详细设计说明书的要求进行组装。
(3)确认测试
确认测试的目标是验证软件的功能和性能以及其他特性是否与用户的要求一致。确认测试一般包括有效性测试和软件配置复查。一般有第三方测试机构进行。
(4)系统测试
软件作为计算机系统的一部分,与硬件、网络、外设、支撑软件、数据以及人员结合在一起,在实际或模拟环境下,对计算机系统进行测试,目的在于与系统需求比较,发现问题
(5)验收测试
以用户为主的测试,软件开发人员和质量保证人员参加,由用户设计测试用例。
不是对系统进行全覆盖测试,而是对核心业务流程进行测试。

单元测试

验证单元模块是否得出预期结果。
敏捷开发模式中,测试开发驱动(Test Driven Development,TDD)核心是把单元测试用例先做好,功能开发以通过相应的单元测试用例为目标。
敏捷开发从根本上避免了瀑布模型的弱点,它有两个核心——迭代开发(Iterative Development)和增量开发(Incremental Development)

功能测试

通过黑盒子模式发现代码集成后存在的功能问题。

性能测试

重点验证软件的非功能性需求。如吞吐率、稳定性、可靠性等。
通过自动化的方法模拟真实用户并发访问的场景,以验证系统的性能指标或发现其性能瓶颈。

成品测试(GMV)

测试软件的安装、部署、发布等情况,确保软件最终能顺利地安装到用户的环境中。

有效:指这种方法有效模拟真实的应用,并有效地暴露潜在的问题。
可控:指的是使用的方法有明确的步骤,通过相应的步骤可以使暴露的问题重现。

白盒测试

测试人员可以直接访问内部数据结果、算法及其代码。
常见的有接口测试代码覆盖率测试缺陷注入方法等。
接口测试:通过调用应用程序的共有或私有接口,验证返回内容的正确性的方式,是常用的白盒测试方法。如果需要验证一个代码分支,还可以把分支需要使用的多个接口调用放在一个用例中。
代码覆盖率测试:是检验代码是否满足指定覆盖率的测试。如,可以设计一个测试,通过改变输入条件,使程序中所有代码行都被至少执行一次,并检验输出是否符合预期。
缺陷注入:关注代码在错误和临界条件的表现。能够保证代码的健壮性。

黑盒测试

通过触发业务相关的功能点,检验集成条件下系统的正确性。

手工操作

优势是方便灵活。不足是重复开销。

自动化测试

能弥补手工测试在重复开销方面的不足。但是对测试团队的组织和技术要求更高。

回归测试

理论而言,只要有新的版本发布的发布,对执行所有测试用例的回归测试是必需的。自动化测试在重复执行方面的优势正好能满足回归测试的这种要求。

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