测试分类简介

1.按照测试⽬标分类

1)界面测试:

界⾯测试(简称UI测试),指按照界⾯的需求(⼀般是UI设计稿)和界⾯的设计规则,对我们软件界⾯所展⽰的全部内容进⾏测试和检查。

2)功能测试:

功能测试就是对产品的各功能进⾏验证,根据功能 测试⽤例 ,逐项测试,检查产品是否达到⽤⼾要求 的功能。

3)性能测试:

我们在使⽤软件的时候有时会碰到软件⽹⻚打开时越来越慢,查询数据时很⻓时间才显⽰列表,软件 运⾏越来越慢等问题,这些问题都是系统的性能问题引起的。

4)可靠性测试:

可靠性(Availability)即可⽤性,是指系统正常运⾏的能⼒或者程度,⼀般⽤正常向⽤⼾提供软件服务 的时间占总时间的百分⽐表⽰。

可靠性 = 正常运⾏时间/(正常运⾏时间+⾮正常运⾏时间)*100%
可⽤性指标⼀般要求达到4个或5个“9”,即99.99%或者99.999%
如果可⽤性达到99.999%,意味着全年不能正常⼯作的时间只有5min。

5)安全性测试:

安全性是指信息安全,是指计算机系统或⽹络保护⽤⼾数据隐私,完整,保护数据正常传输和抵御⿊ 客,病毒攻击的能⼒。
安全性测试属于⾮功能性测试很重要的⼀个⽅⾯,系统常⻅的安全漏洞和威胁如下
输⼊域,如输⼊恶性或者带有病毒的脚本或⻓字符串;
代码中的安全性问题,如SQL/XML注⼊
不安全的数据存储或者传递
数据⽂件,邮件⽂件,系统配置⽂件等⾥⾯有危害系统的信息或者数据;
有问题的访问控制,权限分配等
假冒ID:⾝份欺骗
篡改,对数据的恶意修改,破坏数据的完整性

6)易用性测试:

易⽤性包含七个要素:符合标准和规 范,直观性,⼀致性,灵活性,舒适性,正确性和实⽤性。

2.按照执行方式分类

1)静态测试:

所谓静态测试(static testing)就是不实际运⾏被测软件,⽽只是静态地检查程序代码、界⾯或⽂档 中可能存在的错误的过程。
不以测试数据的执⾏⽽是对测试对象的分析过程,仅通过分析或检查源程序的设计、内部结构、逻
辑、代码⻛格和规格等来检查程序的正确性。
常⻅的静态测试⽅式有代码⾛查,代码扫描⼯具等

2)动态测试:

动态测试(dynamic testing),指的是实际运⾏被测程序,输⼊相应的测试数据,检查实际输出结果 和预期结果是否相符的过程,所以判断⼀个测试属于动态测试还是静态的,唯⼀的标准就是看是否运 ⾏程序。

⼤多数软件测试⼯作都属于动态测试

3.按照测试方法分类

1)白盒测试:

⽩盒测试⼜称为结构测试或逻辑测试,它⼀般⽤来分析程序的内部结构,针对程序的逻辑结构来设计测试⽤例进⾏测试。
⽩盒测试的测试⽬的是,通过检查软件内部的逻辑结构,对软件中的逻辑路径进⾏覆盖测试;在序
不同地⽅设⽴检查点,检查程序的状态,以确定实际运⾏状态与预期状态是否⼀致。
⽩盒测试主要分为静态测试和动态测试两种。静态测试常⻅于桌⾯检查、代码审查、代码⾛查、代码扫描⼯具
动态测试⽅法主要包含六种测试⽅法:语句覆盖、判定覆盖、条件覆盖、判定条件覆盖、条件组合覆盖、路径覆盖。
⽩盒测试主要应⽤于单元测试阶段
先执⾏静态设计⽤例的⽅法,再执⾏动态设计测试⽤例的⽅法
设计⽤例⼀般使⽤路径测试,重点模块追加使⽤逻辑覆盖⽅法

2)黑盒测试

⿊盒测试就是在完全不考虑程序逻辑和内部结构的情况下,检查系统功能是否按照需求规格说明书的规 定正常使⽤、是否能适当的接收输⼊数据⽽输出正确的结果,满⾜规范需求。
所以,⿊盒测试⼜称之为数据驱动测试,只注重软件的功能
⿊盒测试的优点
不需要了解程序内部的代码以及实现,不关注软件内部的实现。
从⽤⼾⻆度出发设计测试⽤例,很容易的知道⽤⼾会⽤到哪些功能,会遇到哪些问题,锻炼测试⼈ 员的产品思维。测试⽤例是基于软件需求开发⽂档,不容易遗漏软件需求⽂档中需要测试的功能。
⿊盒测试的缺点是不可能覆盖所有代码。
⿊盒测试⽤到的测试⽅法有,等价类,边界值,因果图,场景法,错误猜测法等
3)灰盒测试
灰盒测试,是介于⽩盒测试与⿊盒测试之间的⼀种测试,灰盒测试多⽤于集成测试阶段,不仅关注输出、输⼊的正确性,同时也关注程序内部的情况。
但是,灰盒测试没有⽩盒测试详细和完整,⿊盒测试是覆盖产品范围最⼴的测试,因此灰盒测试基本是不能够替代⿊盒测试,否则需要很⼤的代价,设计⾮常多的⽤例。
常⻅⾯试题:你知道的测试⽅法有哪些?哪种⽤的⽐较多?
常⻅的测试⽅法有⿊盒测试,⽩盒测试和灰盒测试。开发⼈员主要⽤⽩盒测试和灰盒测试,测试⼈员主要⽤⽩盒测试和⿊盒测试。对于测试⼈员来说,相较于⽩盒测试,⿊盒测试⽤的更多⼀些

4.按照测试阶段分类

1)单元测试

与编码同步进⾏,针对软件最⼩组成单元进⾏测试,主要采⽤⽩盒测试⽅法,从被测对象的内部结构出发设计测试⽤例。
最⼩单元实际是认为定义的,⼀个⽅法,⼀个类都可以理解为“最⼩单元”。

2)集成测试

集成测试也称联合测试(联调)、组装测试,将程序模块采⽤适当的集成策略组装起来,对系统的接⼝ 及集成后的功能进⾏正确性检测的测试⼯作。集成主要⽬的是检查软件单位之间的接⼝是否正确。

3)系统测试:

对通过集成测试的系统进⾏整体测试,验证系统功能性和⾮功能性需求的实现
(1)冒烟测试
(2)集成测试

4)验收测试

针对⽤⼾需求,对通过系统测试的软件进⾏交付性测试,以确定系统是否满⾜验收标准,由⽤⼾
或其他授权机构决定是否接受系统。验收测试是部署软件之前的最后⼀个测试操作。它是技术测试的 最后⼀个阶段,也称为交付测试。验收测试的⽬的是确保软件准备就绪,按照项⽬合同、任务书、双 ⽅约定的验收依据⽂档,向软件购买都展⽰该软件系统满⾜原始需求。

5.按照是否手工测试

1)手工测试

⼿⼯测试就是由⼈去⼀个⼀个的输⼊⽤例,然后观察结果,和机器测试相对应,属于⽐较原始但是必须的⼀个步骤

2)自动化测试

就是在预设条件下运⾏系统或应⽤程序,评估运⾏结果,预先条件应包括正常条件和异常条件。简单说 ⾃动化测试是把以⼈为驱动的测试⾏为转化为机器执⾏的⼀种过程。 ⾃动化测试⽐如功能测试⾃动化、性能测试⾃动化、安全测试⾃动化。 ⾃动化测试按照测试对象来分,还可以分为接⼝测试、UI测 试等。接⼝测试的ROI(产出投⼊⽐)要⽐UI测试⾼。

6.按照实施组织划分

α测试(Alpha Testing)

α测试⼜叫内测或者叫a测,其实都是⼀个涵义
α测试通常是公司内部的⽤⼾在模拟实际操作环境下进⾏的测试。α测试的⽬的是评价软件产品的
FLURPS(即功能、可使⽤性、可靠性、性能和⽀持)。 α测试不能由程序员或测试员完成。

β测试(Beta Testing)

β测试⼜叫公测或者叫b测
β测试由软件的最终⽤⼾们在⼀个或多个场所进⾏,这⾥就可以理解为,β测试是正式⽤⼾中的⼀部分,他们在任意的场合来使⽤软件,⽬的是为了发现软件是否存在⼀系列的问题

第三⽅测试

第三⽅软件测试是指由独⽴的第三⽅公司或组织进⾏的软件测试活动。

7.按照测试地域划分

按照测试地域划分,⼀般会将测试划分为国际化测试和本地测试

国际化测试

简⾔之,测试⼈员需要测试软件在不同语⾔和地区是否能正常⼯作

本地测试

之前所讲的都属于本地测试
  • 10
    点赞
  • 19
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值