一、按测试阶段划分
一)单元测试
- 概念:单元测试(模块测试)是开发者编写的一小段代码,用于检验被测代码的一个很小的、很明确的功能是否正确。(具体可自行百度o( ̄︶ ̄)o)
- 负责人员:开发
- 采取技术:白盒
- 目的:单元代码是否符合设计
- 开始阶段:编写代码时,需开发反复调试保证它能编译通过。越早进行越好。
二)集成测试
- 概念:集成测试,也叫组装测试或联合测试。在单元测试的基础上,将所有模块按照设计要求(如根据结构图)组装成为子系统或系统,进行集成测试。(具体可自行百度o( ̄︶ ̄)o)
- 负责人员:开发/测试
- 采取技术:白盒(性能或可靠性)+黑盒(功能)
- 目的:验证设计,也验证需求
- 开始阶段:通过单元测试后进行
三)系统测试
- 概念:系统测试是将经过集成测试的软件,作为计算机系统的一个部分,与系统中其他部分结合起来,在实际运行环境下对计算机系统进行的一系列严格有效地测试,以发现软件潜在的问题,保证系统的正常运行。(具体可自行百度o( ̄︶ ̄)o)
- 负责人员:测试
- 采取技术:黑盒(功能+健壮性测试(概念:软件系统在异常情况下能否正常运行的能力,一是容错力,二是恢复力))
- 目的:验证是否符合需求文档
- 开始阶段:集成测试之后
- 内容包括:恢复测试、安全测试、压力测试
二、按测试技术划分
一)白盒测试
属于开发范畴,不多做赘述。
二)黑盒测试
-
功能测试
1)逻辑功能测试:是否符合需求文档(PRD)的逻辑功能
2)界面测试(UI测试):界面的功能模块布局是否合理、整体风格是否一致、各控件放置位置是否符合用户使用习惯,界面操作便捷性、导航简单易懂性,页面元素可用性,界面文字是否正确等。(具体可自行百度o( ̄︶ ̄)o)
3)易用性测试:使用软件是否感觉方便。
4)安装测试:确保该软件在正常情况和异常情况的不同条件下,例如,进行首次安装、升级、完整的或自定义的安装都能进行安装。
5)兼容性测试:检查软件之间能否正确地进行交互和共享信息。如:不同操作系统、不同硬件设备等 -
性能测试(简单描述,不做深入探究)
1)负载测试:软件在一定时期内,最大支持并发用户数,软件请求出错率。
2)压力测试:软件在一定时期内,系统的cpu利用率,内存使用率,磁盘吞吐率,网络吞吐量等。负载和压力测试区别于目的不同。
3)容量测试:系统最大承受量。如最大用户数,最大储存量,最多处理数据流量等
三)灰盒测试
介于白盒和黑和直接的测试,即可保证嘿嘿的关注点又可以掌控白盒的内部结构,但不会去对内部结构和运作做详细了解,灰盒结合了白盒测试和黑盒测试的要素。
三、按测试对象是否运行划分
一)动态测试
- 概述:是指通过运行被测程序,检查运行结果与预期结果的差异,并分析运行效率和健壮性等性能,这种方法由三部分组成:构造测试实例、执行程序、分析程序的输出结果。
- 步骤:单元测试—>集成测试—>系统测试—>验收测试—>回归测试
二)静态测试
- 概述:是指不运行被测程序本身,仅通过分析或检查源程序的语法、结构、过程、接口等来检查程序的正确性。
四、按照测试手段划分
一)人工测试
- 即常规点点点
二)自动化测试
- 概念:把以人为驱动的测试行为转化为机器执行的一种过程。
- 工具有:QTP、WinRunner、Rational Robot。或参考博客:https://blog.csdn.net/glongljl/article/details/88118740
五、其它
一)冒烟测试
- 概述:通俗来说,对主要功能走一遍业务流程。
- 目的:通过冒烟测试,在软件代码正式编译并交付测试之前,先尽量消除其表面的错误,减少后期测试的负担。
- 阶段(主要针对3):
1)形成集成测试版本以前:验证各个单元能够成功执行,并保证测试版本能够顺利集成;
2)形成集成测试版本:以保证新的或者更改过的代码不破坏集成版本的完成性和稳定性;
3)后期预测试缺陷的修正:针对每个缺陷所做的缺陷修正都要先在干净的链接环境中进行冒烟测试,测试通过后才能更新相关软件版本。
二)回归测试
- 就已经提出的缺陷进行复验
三)随机测试
- 主要是根据测试者的经验对软件进行功能和性能抽查。
四)验收测试
- α测试(内测)
- β测试(公测)
- γ(伽马)测试(正式环境候选版)
觉得还八错的小伙伴点个赞哇(✿◡‿◡)~~~