测试第二课-------测试分类

作者前言

🎂 ✨✨✨✨✨✨🍧🍧🍧🍧🍧🍧🍧🎂
​🎂 作者介绍: 🎂🎂
🎂 🎉🎉🎉🎉🎉🎉🎉 🎂
🎂作者id:老秦包你会, 🎂
简单介绍:🎂🎂🎂🎂🎂🎂🎂🎂🎂🎂🎂🎂🎂🎂🎂
喜欢学习C语言、C++和python等编程语言,是一位爱分享的博主,有兴趣的小可爱可以来互讨 🎂🎂🎂🎂🎂🎂🎂🎂
🎂个人主页::小小页面🎂
🎂gitee页面:秦大大🎂
🎂🎂🎂🎂🎂🎂🎂🎂
🎂 一个爱分享的小博主 欢迎小可爱们前来借鉴🎂


测试分类

  • **作者前言**
  • 为啥要测试分类
  • 测试分类
    • 界面测试
    • 功能测试
    • 性能测试
    • 可靠性测试
    • 安全性测试
    • 易⽤性测试
  • 按照执⾏⽅式分类
    • 静态测试
    • 动态测试
  • 按照测试⽅法
    • ⽩盒测试
      • 语句覆盖
      • 判定覆盖
      • 条件覆盖
    • 判定条件覆盖
      • 条件组合覆盖
      • 路径覆盖
    • 黑盒测试
  • 按照测试阶段分类
    • 单元测试
    • 集成测试
    • 系统测试
    • 验收测试
  • 按照是否手动测试
    • ⼿⼯测试
    • ⾃动化测试

为啥要测试分类

软件测试是软件⽣命周期中的⼀个重要环节,具有较⾼的复杂性,对于软件测试,可以从不同的⻆度加以分类,使开发者在软件开发过程中的不同层次、不同阶段对测试⼯作进⾏更好的执⾏和管理测试的分类⽅法

测试分类

界面测试

界⾯测试(简称UI测试),指按照界⾯的需求(⼀般是UI设计稿)和界⾯的设计规则,对我们软件界⾯所展⽰的全部内容进⾏测试和检查,⼀般包括如下内容:
• 验证界⾯内容显⽰的完整性,⼀致性,准确性,友好性。⽐如界⾯内容对屏幕⼤⼩的⾃适应,换⾏,内容是否全部清晰展⽰;
• 验证整个界⾯布局和排版是否合理,不同板块字体的设计,图⽚的展⽰是否符合需求;
• 对界⾯不同控件的测试,⽐如,对话框,⽂本框,滚动条,选项按钮等是否可以正常使⽤,有效和⽆效的状态是否设计合理;
• 界⾯的布局和⾊调符合当下时事的发展。

功能测试

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

性能测试

要进⾏软件产品的性能问题,要对产品的性能需求进⾏分析,然后基于系统的性能需求和系统架构,完成性能测试的设计和执⾏,最后要进⾏持续的性能调优

可靠性测试

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

可靠性 = 正常运⾏时间/(正常运⾏时间+⾮正常运⾏时间)*100%

安全性测试

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

易⽤性测试

件产品也始终关注⽤⼾体验,让⽤⼾获得舒适,易⽤的体验,针对软件这⽅⾯的测试称之为易⽤性测试
一般包括:
1,标准性和规范性。2,直观性。3,灵活性。4,舒适性。

按照执⾏⽅式分类

静态测试

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

动态测试

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

按照测试⽅法

⽩盒测试

⽩盒测试⼜称为结构测试或逻辑测试,它⼀般⽤来分析程序的内部结构,针对程序的逻辑结构来设计测试⽤例进⾏测试。
⽩盒测试的测试⽬的是,通过检查软件内部的逻辑结构,对软件中的逻辑路径进⾏覆盖测试;在程序不同地⽅设⽴检查点,检查程序的状态,以确定实际运⾏状态与预期状态是否⼀致。

⽩盒测试主要分为静态测试和动态测试两种。静态测试常⻅于桌⾯检查、代码审查、代码⾛查、代码扫描⼯具
动态测试⽅法主要包含六种测试⽅法:语句覆盖、判定覆盖、条件覆盖、判定条件覆盖、条件组合覆盖、路径覆盖。
在这里插入图片描述

语句覆盖

简单的理解就是每个语句我们都要至少执行一遍

	if (a && b)cout << "T";if (d || c)cout << "Y";

用例1:a(true), b(true),c(true), d(false)

判定覆盖

最终结果判定都要至少走一遍,为真为假都要进行,也就是说a && b这个结果是真是假都要测试,d || c也是一样的,

条件覆盖

每个条件都要覆盖到,简单的理解就是 a情况有两种,b的情况也是,c和d也是,每个条件都要至少执行一次

判定条件覆盖

简单的说就是,结合判定覆盖和条件覆盖,纪要判定结果是真是假走一遍,也要abcd为真为假走至少一遍。

条件组合覆盖

简单的说,如上 a、b、c、d,都有真和假,进行组合起来测试。

路径覆盖

在这里插入图片描述
以该图为例
(1)if(x>0 && y>0)判定:记为P1
(2)if(z < 0)判定:记为P2
(3)x > 0:记为C1
(4)y > 0:记为C2
(5)z < 0:记为C3
测试用例如下:
在这里插入图片描述

黑盒测试

⿊盒测试就是在完全不考虑程序逻辑和内部结构的情况下,检查系统功能是否按照需求规格说明书的规 定正常使⽤、是否能适当的接收输⼊数据⽽输出正确的结果,满⾜规范需求。

优点:
不需要了解程序内部的代码以及实现,不关注软件内部的实现。
从⽤⼾⻆度出发设计测试⽤例,很容易的知道⽤⼾会⽤到哪些功能,会遇到哪些问题,锻炼测试⼈ 员的产品思维。

缺点
是不可能覆盖所有代码

⿊盒测试⽤到的测试⽅法有,等价类,边界值,因果图,场景法,错误猜测法等

常⻅⾯试题:你知道的测试⽅法有哪些?哪种⽤的⽐较多?
常⻅的测试⽅法有⿊盒测试,⽩盒测试和灰盒测试。开发⼈员主要⽤⽩盒测试和灰盒测试,测试⼈员
主要⽤⽩盒测试和⿊盒测试。对于测试⼈员来说,相较于⽩盒测试,⿊盒测试⽤的更多⼀些。

按照测试阶段分类

单元测试

与编码同步进⾏,针对软件最⼩组成单元进⾏测试,主要采⽤⽩盒测试⽅法,从被测对象的内部结构出发设计测试⽤例。
这个单元是人为规定的,可以是方法、接口、也可以是功能。
到底怎么才算“最⼩单元”呢,最⼩单元实际是认为定义的,⼀个⽅法,⼀个类都可以理解为“最⼩ 单元”。

集成测试

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

系统测试

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

验收测试

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

按照是否手动测试

⼿⼯测试

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

⾃动化测试

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

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/diannao/78751.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

MySQL安装实战分享

一、在 Windows 上安装 MySQL 1. 下载 MySQL 安装包 访问 MySQL 官方下载页面。选择适合你操作系统的版本。一般推荐下载 MySQL Installer。 2. 运行安装程序 双击下载的安装文件&#xff08;例如 mysql-installer-community-<version>.msi&#xff09;。如果出现安全…

数据库预热

介绍 Database Warm-up &#x1f9e0; 一句话理解 数据库是在应用启动阶段&#xff0c;提前建立数据库连接 或 执行轻量 SQL 操作&#xff0c;从而 加快首个请求的响应速度 的一种优化手段 &#x1f3af; 为什么需要数据库预热&#xff1f; 当 FastAPI 或其他 Web 服务刚启…

SearXNG

SearXNG 什么是 SearXNG &#xff1f;说白了&#xff0c;其实就是一个免费开源的搜索引擎。那为什么要本地安装它呢&#xff1f; 看它官网的解释(翻译)&#xff0c;当然&#xff0c;其中官方也有一篇文档解释了为什么需要部署使用私有示例&#xff1a;为什么使用私有实例&…

js 颜色转换分析

一、十六进制转RGB function hexToRgba(hex) {// 移除 # 字符hex hex.replace(#, );// 处理简写形式如 #fffif (hex.length 3) {hex hex[0] hex[0] hex[1] hex[1] hex[2] hex[2];}// 转换为十进制const r parseInt(hex.substring(0, 2), 16); // 截图前两位&#xff0…

智能资源管理机制-重传机制

一、发送端资源管理的核心机制 1. 滑动窗口&#xff08;Sliding Window&#xff09; 这是TCP协议的核心优化设计&#xff1a; 窗口动态滑动&#xff1a;发送端不需要保留所有已发送的分组&#xff0c;只需维护一个"发送窗口"窗口大小&#xff1a;由接收方通告的接…

基于SSM+Layui毕业设计选题系统源码

项目介绍 基于SSM+Layui毕业设计选题系统源码,可以作为课程设计项目参考,该系统分为三个角色: 管理员:用户管理(对学生和老师的信息进行维护),统计分析(对老师课题情况以及学生选题情况信息进行维护),修改密码 老师:个人信息维护,毕业设计题目管理,报名学生管理…

通过uri获取文件路径手机适配

青铜版本 return contentResolver.query(this, arrayOf(MediaStore.MediaColumns.DATA), null, null).let {if (it?.moveToFirst() true) {val columnIndex it.getColumnIndex(MediaStore.MediaColumns.DATA)val path it.getString(columnIndex)it.close()return path}&quo…

vue模拟扑克效果

vue模拟扑克效果 效果图&#xff1a; step1:C:\Users\wangrusheng\PycharmProjects\untitled18\src\views\Home.vue <template><div class"poker-container"><!-- 使用复合数据对象实现双行显示 --><divv-for"(card, index) in POKER_…

基础数学:图论与信息论

微积分与概率论由此进&#xff1a;基础数学&#xff1a;微积分和概率与统计-CSDN博客 线代与优化理论由此进&#xff1a;基础数学&#xff1a;线性代数与优化理论-CSDN博客 数值分析与离散数学由此进&#xff1a;基础数学&#xff1a;数值分析与离散数学-CSDN博客 四、图论与…

构建智能期货交易策略分析应用:MCP与AI的无缝集成

引言 随着金融科技的快速发展&#xff0c;数据驱动的交易决策已成为期货交易领域的重要趋势。本文将深入探讨一个结合了Model Content Protocol (MCP)和AI技术的期货交易策略分析应用——Futures MCP。该应用不仅提供了丰富的技术分析工具&#xff0c;还通过MCP协议与大型语言…

0x02.Redis 集群的实现原理是什么?

回答重点 Redis 集群&#xff08;Redis cluster&#xff09;是通过多个 Redis 实例组成的&#xff0c;每个主节点实例负责存储部分的数据&#xff0c;并且可以有一个或多个从节点作为备份。 具体是采用哈希槽&#xff08;Hash Slot&#xff09;机制来分配数据&#xff0c;将整…

基本的DOS命令

一.打开CMD方式&#xff1a; winR 输入cmd 开始系统命令提示符 在任意文件夹下&#xff0c;shift&#xff0b;鼠标右击&#xff0c;在此处打开命令 资源管理器的地址栏前面输入cmd 以管理员身份打开cmd&#xff1a;选择以管理员方式运行 二.常用的Dos命令 #盘符切换 盘符…

深度剖析:架构评估的常用方法与应用

架构评估是确保系统架构满足需求、性能和质量等方面要求的重要环节&#xff0c;以下是一些常见的架构评估方法的详细介绍&#xff1a; 一、基于调查问卷或检查表的评估方法 1.方法概述&#xff1a;该方法通过设计一系列针对性的问题或检查项&#xff0c;形成问卷或检查表&…

代码随想录算法训练营第十六天

LeetCode题目: 530. 二叉搜索树的最小绝对差501. 二叉搜索树中的众数236. 二叉树的最近公共祖先3272. 统计好整数的数目(每日一题) 其他: 今日总结 往期打卡 530. 二叉搜索树的最小绝对差 跳转: 530. 二叉搜索树的最小绝对差 学习: 代码随想录公开讲解 问题: 给你一个二叉搜…

基于双闭环PID控制器的永磁同步电机控制系统匝间故障Simulink仿真

欢迎微♥关注“电击小子程高兴的MATLAB小屋”获取巨额优惠 1.模型简介 本仿真模型基于MATLAB/Simulink&#xff08;版本MATLAB 2013Rb&#xff09;软件。建议采用matlab2013 Rb及以上版本打开。&#xff08;若需要其他版本可联系代为转换&#xff0c;高于该版本的matlab均可正…

02-libVLC的视频播放器:播放音视频文件以及网络流

libvlc_new(0, nullptr)功能:创建并初始化libVLC的核心实例,是使用所有libVLC功能的前提。 参数:第一个参数:参数数量(通常设为0)第二个参数:参数列表(通常为nullptr,表示使用默认配置)返回值:成功返回libvlc_instance_t*指针,失败返回nullptr。注意事项:可通过参…

2025蓝桥杯省赛C++B组解题思路

由于题面还没出来&#xff0c;现在先口胡一下思路 填空题直接打表找规律或者乱搞一下就能出&#xff0c;从大题开始说。 1&#xff0c;题意&#xff1a; 给你一个数组&#xff0c;这个数组里有几个数可以被一个连续递增的数字区间求和得出 思路&#xff1a;诈骗题&#xff0c;显…

防止邮件伪造的策略 SPF 介绍

SPF是Sender Policy Framework的缩写&#xff0c;即发件人策略框架&#xff0c;是一种用于防止电子邮件伪造的技术&#xff0c;用来验证发件人邮箱域名的真实性。以下是关于它的详细说明&#xff1a; 1. 定义与作用 SPF是一种电子邮件验证系统&#xff0c;它通过在域名的DNS记…

JavaScript Symbol与BigInt

目录 Symbol类型 一、Symbol 的核心特性 1. 唯一性 2. 不可变性 3. 不可枚举性 二、创建 Symbol 1. 基础创建 2. 全局 Symbol 注册表 三、Symbol 作为对象属性 1. 定义 Symbol 属性 2. 遍历 Symbol 属性 四、内置 Symbol 值 五、实际应用场景 1. 避免属性名冲突 …

AI Agent工程师认证-学习笔记(3)——【多Agent】MetaGPT

学习链接:【多Agent】MetaGPT学习教程 源代码链接(觉得很好,star一下):GitHub - 基于MetaGPT的多智能体入门与开发教程 MetaGPT链接:GitHub - MetaGPT 前期准备 1、获取MetaGPT (1)使用pip获取MetaGPT pip install metagpt==0.6.6#或者在国内加速安装镜像 #pip in…