SoftwareTest5 - 你就只知道功能测试吗 ?

你就只知道功能测试吗 ?

  • 一 . 按照测试对象划分
    • 1.1 文档测试
    • 1.2 可靠性测试
    • 1.3 容错性测试
    • 1.4 安装卸载测试
    • 1.5 内存泄漏测试
    • 1.6 弱网测试
  • 二 . 按是否查看代码划分
    • 2.1 黑盒测试
    • 2.2 白盒测试
    • 2.3 灰盒测试
  • 三 . 按照开发阶段划分
    • 3.1 单元测试
    • 3.2 集成测试
    • 3.3 冒烟测试
    • 3.4 系统测试
    • 3.5 回归测试
    • 3.6 验收测试
  • 四 . 按照测试实施组织划分
  • 五 . 按照是否运行划分
  • 六 . 按照手工进行划分
  • 七 . 按照地域进行划分

Hello , 大家好 , 又给大家带来新的专栏喽 ~
这个专栏是专门为零基础小白从 0 到 1 了解软件测试基础理论设计的 , 虽然还不足以让你成为软件测试行业的佼佼者 , 但是可以让你了解一下软件测试行业的相关知识 , 具有一定的竞争实力 .
那也欢迎大家订阅此专栏 : https://blog.csdn.net/m0_53117341/category_12427509.html
希望大家都能够拿到好的 Offer
在这里插入图片描述

那在最开始 , 我们先把这篇文章的大体脉络以思维导图的形式展现出来
测试分类.png

测试分类.xmind

一 . 按照测试对象划分

image.png

1.1 文档测试

实际工作中 , 也很少进行文档测试 , 最主要的一个原因就是 : 人们想的往往跟写出来的南辕北辙 , 产品经理表达的意思是他要餐巾纸 , 你听成了三斤屎 , 每个人理解问题的角度和表述能力是不一样的 , 所以通过文档测试的方式不适合于日常开发

1.2 可靠性测试

可靠性(Availability)即可用性 , 是指系统正常运行的能力或者程度 , 一般用正常向用户提供软件服务的时间占总时间的百分比表示 , 实际表达的意思就是程序正常使用多长时间

可靠性 = 正常运行时间 / (正常运行时间 + 非正常运行时间 ) * 100%
= 正常运行时间 / 总时间 * 100%

举个例子 :

image.png
可用性指标一般要求达到 4 个或 5 个 “9” , 即 99.99% 或者 99.999% , 最高可达到 100%

如果想要达成 4 个 9 (99.99%) 以及 5 个 9 (99.999%) , 对于全年无休的系统来说 , 不可用的时间是多少呢 ?

image.png

1.3 容错性测试

容错性测试是指系统能够处理异常 , 用户的错误操作而不至于系统崩溃 , 从而能够提高系统的可用性

容错性测试与可靠性测试非常相似 , 但是并不相同 , 容错性指的是出问题了还能不能用 , 可靠性指的是程序出不出问题

举个栗子 :
有一架飞机 , 他有四个引擎 , 假如说有一个引擎坏掉了 , 但是飞机还能正常运行
那么这架飞机他的容错性非常好 , 有一个引擎坏掉了 , 这就是不可靠性的体现

1.4 安装卸载测试

应用的安装和卸载在任何一款 APP 中都属于最基本功能 , 一旦出错 , 就属于优先级为紧要 Critical 的缺陷

在工作中 , 很容易就遗忘了安装卸载测试

1.5 内存泄漏测试

有一些语言会自动帮我们进行内存释放 , 但是有一些语言 , 动态开辟的内存要程序员手动释放的 , 比如 C 语言 .

那么程序员也不是神 , 我们很容易就会造成内存泄漏 .

在工作中 , 会有两种方法测试 :

  1. 人工肉眼观察 : 费力不讨好 , 先大概看一眼有没有明显问题
  2. 借助工具对代码进行扫描 : Visual Leak Detector / sonar , 记录每次内存分配 , 清楚告诉用户内存是如何泄漏的

1.6 弱网测试

智能手机在网络不好的情况下 , 一直获取不到内容的时候 , 基本都会给予弹窗提醒 ( ANR 弹窗 )

某一时间段内 , 如果网络状况不太好 , 客户端就会对服务器频繁地发送请求 , 造成服务器有一定的压力

我们可以模拟 WIFI 环境、5G、4G、3G、2G 环境等等 , 针对这些环境分别测试我们的产品能否在这些环境正常运行

我们可以去看后台数据 , 哪种网络环境使用人数多 , 优先测试哪种网络环境

我们可以通过 Fiddler 工具进行弱网环境模拟

工作中还有可能使用 Charles , 会更方便一点

1、打开弱网设置选项
image.png
2、打开弱网设置的脚本 , 找到以下位置

image.png
image.png

这里的 300 150 代表传输 1 KB 需要多少 ms
我们通过设置上行速率和下行速率来模拟不同的网络环境
那么怎么知道上行速率和下行速率我们该设置多少呢 ?
百度即可

image.png


参考链接

二 . 按是否查看代码划分

image.png

2.1 黑盒测试

黑盒测试是纯功能测试 , 不关心产品是怎样实现的 (不看代码)
一般在执行系统测试阶段 , 会进行黑盒测试的方法

2.2 白盒测试

白盒测试就需要关注程序的具体实现了 (看代码) , 他一般是在单元测试阶段使用的方法

2.3 灰盒测试

灰盒测试是介于黑盒测试和白盒测试之间的测试方法 , 灰盒测试多用于集成测试阶段 , 不仅关注输出、输入的正确性 , 同时也关注程序内部的情况 . 灰盒测试没有黑盒测试用例覆盖面积大 , 又没有白盒测试对于代码的分析那么详尽

面试题 : 哪种测试方法用的多 ?

黑盒测试和白盒测试测试人员都会用的到 , 在工作中根据具体情况来结合黑盒测试和白盒测试
通常情况下 , 黑盒测试对于测试人员会用的多一点

三 . 按照开发阶段划分

image.png

3.1 单元测试

单元测试是对程序的 “最小单元” 测试

基本情况下 , 就是对我们程序中每一个小功能进行测试

3.2 集成测试

集成测试也称联合测试 , 把程序中不同的模块采用适当的方法组装起来 , 对系统的接口以及集成后的功能进行测试

3.3 冒烟测试

开发人员完成开发任务后 , 交给测试人员测试的第一步 , 评估 软件 / 系统 是否具有测试的条件

冒烟测试成功 -> 进行系统测试
冒烟测试失败 -> 打回开发重做

3.4 系统测试

将软件系统看成是一个系统的测试 , 包括对功能、性能以及软件所运行的软硬件环境进行测试

系统测试就是测试人员详细测试的阶段

3.5 回归测试

回归测试一般是系统测试中的一环 , 他是对历史版本、历史功能进行测试 , 保证功能都是符合要求的

可以借助自动化来进行回归测试

📌 不用人工测试 , 完全使用自动化测试可以吗 ?
🈲 不可以 !
📌 自动化测试可以替代人工测试吗 ?
🈲 不可以 ! 现在不行 , 将来也不行

自动化测试也是测试人员去写的 , 自动化测试是有局限性的 , 而且只是辅助测试人员进行测试的一个工具

3.6 验收测试

验收测试是部署软件之前的最后一个测试操作 . 它是技术测试的最后一个阶段 , 也称为交付测试 . 验收测试的目的是确保软件准备就绪 , 按照项目合同、任务书、双方约定的验收依据文档 , 向软件购买方展示该软件系统满足原始需求

四 . 按照测试实施组织划分

α 测试和 β 测试的区别

  1. 环境 : α 测试是在公司内部进行测试 , β 测试环境是不确定的
  2. 测试人员类型 : α 测试是公司内部人员 , β 测试人员是用户
  3. 测试人员数量 : α 测试测试人员数量较少 , β 测试人员较多
  4. 阶段 : α 测试是在 β 测试之前测试的
  5. 测试时间 : α 测试周期较短 , β 测试周期较长

我们通过一个例子来理解
百度官网测试 :
环境 : α 测试是在百度公司进行 , β 测试是让一些用户先进行测试
测试人员 : α 测试人员是整个百度员工 , β 测试是每天一般抽出来 500 个用户
阶段 : 百度员工测试结束之后再让用户进行测试
周期 : 百度员工测试了 1 周时间 , 用户们持续了一个月

五 . 按照是否运行划分

静态测试 : 比如 : code review , 就光看看代码有没有问题

动态测试 : 把代码运行起来看看有没有问题

六 . 按照手工进行划分

一般分为手工测试和自动化测试

七 . 按照地域进行划分

国际化测试 : 测试在不同的国家使用问题 , 可以考虑一些其他的用例 : 时间、语言、日期、货币等

本地测试 : 就是在本地进行测试

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

用自己的数据集训练YOLO-NAS目标检测器

YOLO-NAS 是 Deci 开发的一种新的最先进的目标检测模型。 在本指南中,我们将讨论什么是 YOLO-NAS 以及如何在自定义数据集上训练 YOLO-NAS 模型。 在线工具推荐: Three.js AI纹理开发包 - YOLO合成数据生成器 - GLTF/GLB在线编辑 - 3D模型格式在线转换 -…

浮动模块布局

基本思路 若宽度和浏览器一样宽,则不需要设置width 一般父盒子使用标准流,然后标准流内使用浮动 一般父盒子需要居中显示,使用 margin: 0 auto; 注意浮动盒子之间的margin值 与 父盒子width、height值之间的相等关系,一定要计算…

Goland 对容器中的 Go 程序断点远程调试

1,针对 golang 程序打断点有哪几种情况 临时进程:针对临时运行一次的 Golang 脚本,比如定时统计脚本,定时推送脚本。常驻进程:针对一直在后台运行的 Golang 程序,比如 HTTP 或者 GRPC 服务。 我们现在假设…

Observability:使用 OpenTelemetry 手动检测 .NET 应用程序

作者:David Hope 在快节奏的软件开发领域,尤其是在云原生领域,DevOps 和 SRE 团队日益成为应用程序稳定性和增长的重要合作伙伴。 DevOps 工程师不断优化软件交付,而 SRE 团队则充当应用程序可靠性、可扩展性和顶级性能的管理者。…

免费记课时小程序-全优学堂

1. 教师使用小程序记上课 使用步骤 创建了员工账号,员工需设置为教师为班级进行排课使用系统账号绑定小程序,记上课 #1.1 创建员工账号 通过系统菜单’机构设置->员工管理‘,添加本机构教师及其他员工。 添加过程中,可设置…

Webpack搭建本地服务器

一、搭建webpack本地服务 1.为什么要搭建本地服务器? 目前我们开发的代码,为了运行需要有两个操作: 操作一:npm run build,编译相关的代码;操作二:通过live server或者直接通过浏览器&#x…

Path with “WEB-INF“ or “META-INF“: [webapp/WEB-INF/NewFile.html]

2023-11-04 01:03:14.523 WARN 10896 --- [nio-8072-exec-6] o.s.w.s.r.ResourceHttpRequestHandler : Path with "WEB-INF" or "META-INF": [webapp/WEB-INFNewFile.html] spring.mvc.view.prefix:/webapp/WEB-INF/

forward和完美转发

std::move(value)是独立于值的右值引用&#xff0c;一个右值引用参数作为函数的形参&#xff0c;在函数内部再转发该参数的时候已经变成了一个左值&#xff0c;并不是它原来的类型了。 template<typename T> void forwardValue(T& val) {processValue(value); //…

Leetcode刷题详解——二叉树的所有路径

1. 题目链接&#xff1a;257. 二叉树的所有路径 2. 题目描述&#xff1a; 给你一个二叉树的根节点 root &#xff0c;按 任意顺序 &#xff0c;返回所有从根节点到叶子节点的路径。 叶子节点 是指没有子节点的节点。 示例 1&#xff1a; 输入&#xff1a;root [1,2,3,null,5]…

AITO问界崛起的“临门一脚”,落在了赛力斯汽车的智慧工厂里

文 | 智能相对论 作者 | 沈浪 AITO问界新M7的销量爆了&#xff0c;口碑也紧接着“爆”了。 AITO问界新M7系列上市以来50天&#xff0c;累计大定突破8万辆。AITO问界M9预计今年12月上市&#xff0c;预订超过了1.5万辆。根据最新公布的产销数据&#xff0c;在过去的10月份&…

【蓝桥杯选拔赛真题48】python最小矩阵 青少年组蓝桥杯python 选拔赛STEMA比赛真题解析

目录 python最小矩阵 一、题目要求 1、编程实现 2、输入输出 二、算法分析

Python某建筑平台数据, 实现网站JS逆向解密

嗨喽&#xff0c;大家好呀~这里是爱看美女的茜茜呐 环境使用: 首先我们先来安装一下写代码的软件&#xff08;对没安装的小白说&#xff09; Python 3.8 / 编译器 Pycharm 2021.2版本 / 编辑器 专业版是付费的 <文章下方名片可获取魔法永久用~> 社区版是免费的 模块…

自动化测试入门知识 —— 数据驱动测试

一、什么是数据驱动测试&#xff1f; 数据驱动测试是一种测试方法&#xff0c;它的核心思想是通过不同的测试数据来验证同一个测试逻辑。通常情况下&#xff0c;测试用例中的输入数据和预期结果会被提取出来&#xff0c;以便可以通过不同的测试数据进行重复执行。 数据驱动测…

R语言用jsonlite库写的一个图片爬虫

目录 一、引言 二、jsonlite库介绍 三、图片爬虫实现步骤 1、发送HTTP请求获取图片列表 2、解析JSON数据提取图片链接 3、下载图片 四、实践与评估 五、注意事项 总结与展望 一、引言 随着互联网的发展&#xff0c;图片已经成为人们获取信息的重要途径之一。图片爬虫…

招聘小程序源码 招聘网源码 人才网源码 招聘求职小程序源码

招聘小程序源码 招聘网源码 人才网源码 招聘求职小程序源码 功能介绍&#xff1a; 1、发布招聘&#xff0c;建立企业人才库 支持企业入驻发布招聘职位&#xff0c;建立人才库&#xff1b; 2、发布简历&#xff0c;在线投简历 支持用户发布简历&#xff0c;向意向职位在线投简…

stm32 ADC

目录 简介 stm32的adc 框图 ①电压输入范围 ②输入通道 ​编辑③ADC通道 ④ADC触发 ⑤ADC中断 ⑥ADC数据 ⑦ADC时钟 ADC的四种转换模式 hal库代码 标准库代码 简介 自然界的信号几乎都是模拟信号&#xff0c;比如光亮、温度、压力、声音&#xff0c;而为了方便存储、…

OpenCV官方教程中文版 —— 图像修复

OpenCV官方教程中文版 —— 图像修复 前言一、基础二、代码三、更多资源 前言 本节我们将要学习&#xff1a; • 使用修补技术去除老照片中小的噪音和划痕 • 使用 OpenCV 中与修补技术相关的函数 一、基础 在我们每个人的家中可能都会几张退化的老照片&#xff0c;有时候…

领星ERP如何无需API开发轻松连接OA、电商、营销、CRM、用户运营、推广、客服等近千款系统

领星ERP&#xff08;LINGXING&#xff09;是一款专业的一站式亚马逊管理系统&#xff0c;帮助卖家构建完整的数据化运营闭环。&#xff0c;致力于为跨境电商卖家提供精细化运营和业财一体化的解决方案。 官网&#xff1a;https://erp.lingxing.com 集简云无代码集成平台&…

Spring Boot 使用断言抛出自定义异常,优化异常处理机制

文章目录 什么是断言&#xff1f;什么是异常&#xff1f;基于断言实现的异常处理机制创建自定义异常类创建全局异常处理器创建自定义断言类创建响应码类创建工具类测试效果 什么是断言&#xff1f; 实际上&#xff0c;断言&#xff08;Assertion&#xff09;是在Java 1.4 版本…

UE5数字孪生制作(一) - QGIS 学习笔记

1.下载 QGIS是免费的GIS工具&#xff0c;下载地址&#xff1a; https://www.qgis.org/en/site/ 2.安装 - 转中文 按照步骤安装&#xff0c;完成后&#xff0c;在菜单 设置settings里&#xff0c;选择options&#xff0c;修改语言 确定后&#xff0c;需要重启下软件 3.学习视…
最新文章