在线客服
扫描二维码
下载博学谷APP
扫描二维码
关注博学谷微信公众号
在实际项目测试过程中,选择并确定测试模型只是我们实施测试的第一步。除此之外,还要弄清楚整个测试过程中需要做哪些类型的测试,并根据不同的测试类型进行相应的测试,比如我们耳熟能详的功能测试、性能测试等,这样我们的测试工作才能有效进行。那么软件测试按照什么分类?又是怎么分类的呢?简单来讲,软件测试可以按照开发阶段、是否查看代码、是否运行、是否手工操作四个方向分类的。

1、按照开发阶段分类
(1)单元测试
单元测试也可以叫做模块测试——对软件的组成单位进行测试,目的是为了检验软件基本组成单位的正确性。测试的对象是软件测试的最小单位:模块。单元测试一般都是开发人员或者专业的白盒测试人员(这些需要对代码有很深的研究)来测试的。
(2)集成测试
单元测试是一个模块内部的测试,当有多个单独的模块测试完成后,我们需要把这些模块放到一起进行整体的测试,这个测试叫做集成测试。集成测试也称联调测试、组装测试,即将程序模块采用适当的集成策略组装起来,对系统的接口及集成后的功能进行正确性检测的测试工作。集成测试主要关注的是关联处比较复杂,容易发生错误的模块。集成测试是在模块之间进行测试(至少两个),将2个或者2个以上的模块进行组装。
(3)系统测试
系统测试指的是在真实或模拟系统运行的环境下,验证完整的程序系统是否可以正确的运行,并满足用户的功能需求,这里完整的程序系统可以理解为把整个软件系统看作一个整体,包括软件和硬件。举个例子,当下公司正在开发一个新的支付系统,要求测试团队对它做系统测试。那我们的测试目的,就是要把各种功能模块全部搭建并运行起来,对它进行整体的功能测试、安全测试、性能测试等,以验证它的功能,安全性,性能等各方面表现是否满足用户需求。
(4)验收测试
验收测试是技术测试的最后一个阶段,也称为交付测试。验收测试是部署软件之前的最后一个测试阶段。验收测试的目的是确保软件准备就绪,向软件购买者展示该软件系统能够满足用户的需求,一般是以用户为主的测试。验收测试的常用策略有两种,正式验收和非正式验收。
2、按照是否查看代码分类
(1)黑盒测试
我们不需要去关心被测试软件里面的结构及实现逻辑如何,只需要关注测试软件的输入数据是什么,以及输出结果是否符合预期就可以了,这样的测试就叫做黑盒测试。黑盒测试又称为数据驱动测试,它只检查程序是否能接收输入数据并产生正确的输出信息。
(2)功能测试
功能测试主要是检查实际功能是否符合用户的需求,因此测试的大部分工作也是围绕软件的功能进行的。功能测试又可以细分为界面测试、逻辑功能测试、易用性测试、安装测试以及兼容性测试等,每种测试的测试目的及复杂程度又有所不同。
(3)性能测试
性能测试拆开来看就是性能与测试。软件的性能包括很多方面,主要是时间性能和空间性能。性能测试是通过自动化的测试工具来模拟多种正常的,不正常的,或者是极限情况下,针对系统的各项性能指标进行的测试,以验证软件性能是否符合要求。
(4)白盒测试
白盒测试与黑盒测试正好相反,就是不关注外面只关注里面,也就是说盒子是透明的,我们可以清楚的看到盒子内部的东西以及内部的运作逻辑,针对内部逻辑进行的测试。
(5)灰盒测试
灰盒测试是介于白盒测试与黑盒测试之间的一种测试,它既关注内部也关注外部的验证。
3、按照是否运行分类
(1)动态测试
动态测试是指通过运行被测程序,输入相应的测试数据来验证运行结果与预期结果的是否一致。目前动态测试也是企业实施项目测试的主要方式。根据动态测试在软件开发过程中所处的阶段和作用,我们可以将其划分为以下几个步骤:单元测试、系统测试、集成测试和验收测试。
(2)静态测试
静态测试就是不实际运行被测软件,只是静态地检查程序代码、界面或文档中可能存在的错误的过程。测试内容主要是代码测试、界面测试和文档测试三个方面
4、按照是否手工操作分类
(1)手工测试
手工测试,指的用手一个一个去执行编写好的测试用例。通过手动操作键盘鼠标来输入一些内容,例如测试登录功能时,要根据用例手动输入用户名/密码,点击按钮等,执行完功能之后,再查看返回结果,验证其是否符合预期的结果。
(2)自动化测试
自动化测试的目的是提高测试效率,把以人为驱动的测试行为转化为机器执行的一种过程。使用工具或代码的方式来实现手工操作。
这一关我们按照是否运行软件将测试分为了静态测试和动态测试,又基于是否手工操作将测试分成了手工测试和自动化测试,除此之外,还有冒烟测试,回归测试以及安全测试等等。通过学习我们可以知道,每一种测试都有自己的特点和适用场景,我们通过这样的系统学习理解每种测试的方式和意义,做到心中有数,这对我们后续的测试技术学习以及实际测试工作有着深远的指导作用。
— 申请免费试学名额 —
在职想转行提升,担心学不会?根据个人情况规划学习路线,闯关式自适应学习模式保证学习效果
讲师一对一辅导,在线答疑解惑,指导就业!
相关推荐 更多
女生可以做软件测试吗?
在互联网行业,女生大部分都是从事UI或者运营的工作。也有少部分从事编程或者测试的工作。由于编程和测试工作时间长,工作强度比较大,甚至需要的专业水平也较高,很多人就认为女孩子不适合做这个行业。其实并不是这样的,在软件测试行业,女生虽然有有一定的弊端,但相对男生,女生更适合做软件测试。下面就为大家详细分析一下为什么女生更加适合!
10022
2019-06-05 16:44:52
软件测试培训课程怎么样?主要学习什么内容?
软件测试是近几年在互联网领域比较热门的岗位之一,现在成为软件测试工程师的主要途径是通过自学,相关岗位转岗,或者通过参加培训。因为软件测试的主要工作内容非常复杂,因此自学的方式需要消耗非常漫长的时间成本,而转岗则是已经充分掌握软件开发或者某个技术,转行成本也相对较高。因此目前软件测试行业的新人大部分是通过集中培训,以及实践后具备相应的相应的工作技能。
9774
2019-08-06 18:49:14
LoadRunner性能测试需要掌握哪些知识点?
LoadRunner性能测试需要掌握哪些知识点?需要学习性能测试基础理论知识、性能测试流程、LoadRunnner Vugent录制与脚本开发、LoadRunnner Controller场景设计与监控利器、LoadRunner Analysis结果分析实战等内容。
8373
2019-10-16 18:56:33
软件测试常见性能问题案例分析
在用户场景不确定的情况下,我们为了保障软件的正常运行就必须对软件的性能进行测试。下面我们一起来看看在软件测试中常见的性能问题,希望大家可以通过这七个比较典型的案例分析,充分掌握各种性能问题的解决方法。
7114
2020-04-08 12:05:55
从零基础到高级软件测试工程师学习路线规划
对于零基础的入门软件测试得小伙伴来讲,想要学好软件测试最重要的就是规划一条科学的学习路线。试想如果一开始就盲目学习,很容易在迷失学习方向不说,还难以建立起自己的知识框架,从而不能很好地掌握所学的内容。为了避免大家努力错方向,本文为大家规划了一条从零基础到高级软件测试工程师的学习路线,下面就一起来看看吧~
10245
2020-05-05 16:04:07
