当前位置: 首页 > news >正文

【测试】测试分类

目录

1、按照测试⽬标分类

1)界面测试:

2)功能测试

3)性能测试

4)可靠性测试

5)安全性测试

6)易用性测试

2、按照执行方式进行分类

1)静态测试

2)动态测试

3、按照测试方法分类

1)白盒测试

2)黑盒测试

3)灰盒测试 

4、按照测试阶段分类

1)单元测试

2)集成测试

3)系统测试

4)硬件测试

5)回归测试

6)验收测试

5、按照是否手工测试

1)手动测试

2)自动化测试


1、按照测试⽬标分类

1)界面测试:

肉眼看到的任何元素都需要进行测试

1、验证界⾯内容显⽰的完整性,⼀致性,准确性,友好性。⽐如界⾯内容对屏幕⼤⼩的⾃适应,换⾏,内容是否全部清晰展⽰;
2、验证整个界⾯布局和排版是否合理,不同板块字体的设计,图⽚的展⽰是否符合需求;
3、对界⾯不同控件的测试,⽐如,对话框,⽂本框,滚动条,选项按钮等是否可以正常使⽤,有效和
4、⽆效的状态是否设计合理;
5、界⾯的布局和⾊调符合当下时事的发展。

2)功能测试

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

3)性能测试

4)可靠性测试

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

5)安全性测试

sql注入、xss漏洞、登录模块密码一般要加密显示....

6)易用性测试

简单性、灵活性、直观性、舒适性       产品是否有简单易上手的

2、按照执行方式进行分类

1)静态测试

所谓静态测试(static testing)就是不实际运⾏被测软件,⽽只是静态地检查程序代码、界⾯或⽂档中可能存在的错误的过程。----需要借助代码扫描工具(sonnar)

2)动态测试

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

3、按照测试方法分类

1)白盒测试

把盒子照亮看看内部结构有没有什么问题

白盒测试中的动态测试方法主要包含六种测试方法:语句覆盖、判定覆盖、条件覆盖、判定条件覆盖、条件组合覆盖、路径覆盖

语句覆盖:

判定覆盖:每个判定都要覆盖到为真和为假两种情况

A and B 要为T => A=T B=T ①
A and B 要为F => A=T B=F 或者A=F B=T或者 A=F B=F ②
C or D 要为T => C=T D=T/F 或者 C=T/F D=T ③
C or D 要为F => C=F D=F ④
得出⽤例:
⽤例1:A=T B=T C=T D=F 满⾜ ①③
⽤例2:A=T B=F C=F D=F 满⾜ ②④
条件覆盖:
A: T F
B: T F
C :T F
D :T F
      ⑤ ⑥
得出⽤例:
⽤例1:A=T B=T C=T D=T ⑤
⽤例2:A=F B=F C=F D=F ⑥
判定条件覆盖:
结合判定覆盖和条件覆盖。
得出⽤例:
⽤例1:A=T B=T C=T D=T 满⾜①③⑤
⽤例2:A=F B=F C=F D=F 满⾜②④⑥
判定覆盖:if条件中既要满足为真的情况也要有测试为假的情况
条件覆盖:表达式既要满足为真的情况也要有测试为假的情况
条件组合覆盖:
A B ∣ C D
T T ∣ T T
T F ∣ T F
F T ∣ F T
F F ∣ F F
每⾏就可以是⼀个⽤例,⼀共四个⽤例。
路径覆盖:
(1)if(x>0 && y>0)判定:记为P1
(2)if(z < 0)判定:记为P2
(3)x > 0:记为C1
(4)y > 0:记为C2
(5)z < 0:记为C3
1、⽩盒测试主要应⽤于单元测试阶段
2、先执⾏静态设计⽤例的⽅法,再执⾏动态设计测试⽤例的⽅法
3、设计⽤例⼀般使⽤路径测试,重点模块追加使⽤逻辑覆盖⽅法

2)黑盒测试

把程序或者代码看作一个黑匣子,给定输入来看结果对不对,结果正确代表写的程序是对的

⿊盒测试的缺点是不可能覆盖所有代码。
⿊盒测试⽤到的测试⽅法有,等价类,边界值,因果图,场景法,错误猜测法等

3)灰盒测试 

灰盒测试,是介于⽩盒测试与⿊盒测试之间的⼀种测试,灰盒测试多⽤于集成测试阶段,不仅关注输出、输⼊的正确性,同时也关注程序内部的情况。
但是,灰盒测试没有⽩盒测试详细和完整,⿊盒测试是覆盖产品范围最⼴的测试,因此灰盒测试基本是不能够替代⿊盒测试,否则需要很⼤的代价,设计⾮常多的⽤例。

 常⻅⾯试题:你知道的测试⽅法有哪些?哪种⽤的⽐较多?

常⻅的测试⽅法有⿊盒测试⽩盒测试和灰盒测试。根据具体的情况来选择,开发⼈员主要⽤⽩盒测试和灰盒测试,测试⼈员主要⽤⽩盒测试和⿊盒测试对于测试⼈员来说,相较于⽩盒测试,⿊盒测试⽤的更多⼀些

4、按照测试阶段分类

1)单元测试

与编码同步进⾏,针对软件最⼩组成单元进⾏测试,主要采⽤⽩盒测试⽅法,从被测对象的内部结构出发设计测试⽤例

2)集成测试

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

3)系统测试

对通过集成测试的系统进⾏整体测试,验证系统功能性和⾮功能性需求的实现。
测试阶段:集成测试通过之后
测试对象:整个系统(软、硬件)
测试⼈员:⿊盒测试⼯程师
测试依据:需求规格说明⽂档
测试⽅法:⿊盒测试
测试内容:功能、界⾯、可靠性、易⽤性、性能、兼容性、安全性等

4)硬件测试

检查当前已经开发好的程序是否具备可测试性,在系统测试之前。 先进⾏冒烟测试,保证基本功能正常,不阻碍后续的测试。

5)回归测试

测试完功能测试之后,整体回归测试一下。自动化测试解决了回归测试的难点。

在实际⼯作中,回归测试需要反复进⾏,当测试者⼀次⼜⼀次地完成相同的测试时,这些回归测试将 变得⾮常令⼈厌烦,⽽在⼤多数回归测试需要⼿⼯完成的时候尤其如此,因此,需要通过 ⾃动测试 来 实现重复的和⼀致的回归测试。通过测试⾃动化可以提⾼回归测试效率。为了⽀持多种回归测试策 略,⾃动测试⼯具应该是通⽤的和灵活的,以便满⾜达到不同回归测试⽬标的要求

6)验收测试

系统测试通过之后(交付测试)

5、按照是否手工测试

1)手动测试

由人一个一个的输入用例,然后观察结果。

2)自动化测试

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

相关文章:

  • 5月15日星期四今日早报简报微语报早读
  • 视频分辨率增强与自动补帧
  • 【.net core】.net core 6.0添加WCF服务引用
  • 沐渥氮气柜氧含量控制核心目标
  • RHCA笔记
  • pgsql14自动创建表分区
  • sqli-labs靶场第七关——文件导出注入
  • python 如何遍历 postgresql 所有的用户表 ?
  • PostgreSQL 联合索引生效条件
  • 每日Prompt:磨砂玻璃后的虚实对比剪影
  • 如何在WooCommerce中设置Stripe
  • 【匹配】Needleman–Wunsch
  • 【yolo】如何在 YOLOv8 中添加负样本以减少误检
  • Springboot3自定义starter笔记
  • MarkitDown:AI时代的文档转换利器
  • 四维时空数据安全传输新框架:压缩感知与几何驱动跳频
  • 【iOS安全】Dopamine越狱 iPhone X iOS 16.6 (20G75) | 解决Jailbreak failed with error
  • 如何在多线程环境下避免快速失败异常?
  • GPU异步执行漏洞攻防实战:从CUDA Stream竞争到安全编程规范
  • NHANES指标推荐:OBS
  • 四川内江警方通报一起持刀伤人致死案:因车辆停放引起,嫌犯被抓获
  • 艺术稀缺性和价值坚守如何构筑品牌差异化壁垒?从“心邸”看CINDY CHAO的破局之道
  • 温州通报“一母亲殴打女儿致其死亡”:嫌犯已被刑拘
  • 龚正会见哥伦比亚总统佩特罗
  • 【社论】打破“隐形高墙”,让老年人更好融入社会
  • 北方产粮大省遭遇气象干旱,夏粮用水如何解决?