测试|测试分类

测试|测试分类

文章目录

  • 测试|测试分类
    • 1.按照测试对象分类(部分掌握)
    • 2.是否查看代码:黑盒、白盒灰盒测试
    • 3.按开发阶段分:单元、集成、系统及验收测试
    • 4.按实施组织分:α、β、第三方测试
    • 5.按是否运行代码:静态、动态测试
    • 6.按是否手工划分
    • 7.按跨地域分:国际化、本地测试(略)

1.按照测试对象分类(部分掌握)

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-puVebyRg-1690710244707)(F:\typora插图\image-20230730162359988.png)]

2.是否查看代码:黑盒、白盒灰盒测试

黑盒测试/数据驱动测试:就是在完全不考虑程序逻辑和内部结构的情况下,检查系统功能是否满足规范需求。只注重软件功能。

黑盒测试的优缺点:优点不关注软件内部实现 ,需要从用户角度出发设计测试用例 ,测试用例是基于软件需求开发文档。缺点:代码覆盖率比较低。

白盒测试:一般用来分析程序的内部结构,针对程序的逻辑结构设计测试用例进行测试。关注代码逻辑,对业务功能有一定漏洞。

主要有六种测试方法:语句测试、判定覆盖、条件覆盖、判定条件覆盖、条件组合覆盖、路径覆盖。

白盒测试优缺点:优点代码覆盖率高,缺点业务功能覆盖率较低。

灰盒测试:介于白盒和黑盒测试之间的测试,多用于集成测试阶段。

灰盒测试特点:既关注输入输出的正确性,同时也关注程序内部的情况。

3.按开发阶段分:单元、集成、系统及验收测试

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-BvLUh2n7-1690710244708)(F:\typora插图\image-20230730164251132.png)]

顺序:单元测试–>集成测试–>冒烟测试–>系统测试–>回归测试–>验收/交付测试(系统测试之后)

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-kDGQcrYG-1690710244708)(F:\typora插图\image-20230730171629131.png)]

冒烟测试的执行:

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-RQlQkKM1-1690710244709)(F:\typora插图\image-20230730170115732.png)]

单元测试:

单元测试是对软件组成单元进行测试。其目的是检验软件基本组成单位的正确性。测试的对象是软件设计的最小单位:模块。又称为模块测试
测试阶段:编码后或者编码前(TDD)
测试对象:最小模块
测试人员:白盒测试工程师或开发工程师(测试人员+后端开发人员)
测试依据:代码和注释+详细设计文档
测试方法:白盒测试(语句覆盖、判定覆盖、条件覆盖…(6))
测试内容:模块接口测试、局部数据结构测试、路径测试、错误处理测试、边界测试

Java如何进行单元测试?

利用Junit等框架

集成测试:

集成测试也称联合测试(联调)、组装测试,将程序模块采用适当的集成策略组装起来,对系统的接口及集成后的功能进行正确性检测的测试工作。集成主要目的是检查软件单位之间的接口是否正确。
测试阶段:一般单元测试之后进行
测试对象:模块间的接口
测试人员:白盒测试工程师或开发工程师
测试依据:单元测试的模块+概要设计文档
测试方法:黑盒测试与白盒测试相结合
测试内容:模块之间数据传输、模块之间功能冲突、模块组装功能正确性、全局数据结构、单模块缺陷对系统的影响

系统测试:

将软件系统看成是一个系统的测试。包括对功能、性能以及软件所运行的软硬件环境进行测试。
测试阶段:集成测试通过之后
测试对象:整个系统(软、硬件)

测试人员:黑盒测试工程师
测试依据:需求规格说明文档
测试方法:黑盒测试
测试内容:功能、界面、可靠性、易用性、性能、兼容性、安全性等

回归测试:回归测试是指修改了旧代码后,重新进行测试以确认修改没有引入新的错误或导致其他代码产生错误 。

解决回归测试的重复性:自动化

冒烟测试:

对象:每一个新编译的需要正式测试的软件版本

测试阶段:系统测试之前完成

目的:确认软件主要功能和核心流程正常,在正式进行系统测试之前执行冒烟测试一般在**开发人员开发(也需要首先进行冒烟测试)**完毕后提交给测试人员来进行测试
时,先进行冒烟测试,保证基本功能正常,不阻碍后续的测试。
如果冒烟测试通过,则测试人员开始进行正式的系统测试,如果不通过,则测试人员可以让开发人员重新修复代码直到冒烟测试通过,再开始进行系统测试。
回归测试和冒烟测试都属于系统测试

验收测试:

测试人员:一般交给最终用户/需求方(产品)

测试方法:黑盒测试

阶段:一般是在系统测试之后

4.按实施组织分:α、β、第三方测试

α测试是由一个用户在开发环境下进行的测试,也可以是公司内部的用户在模拟实际操作环境下进行的测试。 α测试不能由程序员或测试员完成。

Beta测试是一种验收测试。Beta测试由软件的最终用户们在一个或多个场所进行 .

第三方测试是介于开发方和用户间的组织的测试。

α测试与β测试区别:

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

5.按是否运行代码:静态、动态测试

区别:静态测试就是不实际运行被测软件而只是静态检查程序代码,界面或文档中可能存在的错误过程;动态测试指的是实际运行被测程序输入响应的测试数据,检查实际输出结果和预期结果是否相符的过程。

大部分软件测试都属于动态测试

6.按是否手工划分

手工测试:人一个一个输入用例,观察结果与机器测试相对应,比较原始但是必须进行。

自动化测试:把人测试转化为机器执行的一个过程

Q1:自动化能否完全替代手动测试?
A1:不能,只能完成一部分
Q2:手工测试和自动化测试哪个好?
A2:自动化测试可以执行手工测试相当困难或根本做不到的测试,自动化测试具有一致性和可重复性, 自动化脚本完全可复用,自动化测试使软件更有信任度,自动化测试适合做兼容性测试,自动化测试使回归测试更方便、可靠;手工发现的缺陷远远比自动化测试得多,自动化测试对测试人员的技术要求较高,自动化测试成本投入高、风险大,自动化测试是死的,不具有情感,自动化测试完全不可能取代手工测试。

7.按跨地域分:国际化、本地测试(略)

本地化测试

国际化测试

国际化:货币格式,语言,页面布局,时间,日期,流行的设备等

什么是软件国际化?
是在软件设计和文档开发过程中,使得功能和代码设计能处理多种语言和文化习俗,使创建不同语言版本时,不需要重新设计源程序代码的软件工程方法。

测试

国际化测试

国际化:货币格式,语言,页面布局,时间,日期,流行的设备等

什么是软件国际化?
是在软件设计和文档开发过程中,使得功能和代码设计能处理多种语言和文化习俗,使创建不同语言版本时,不需要重新设计源程序代码的软件工程方法。

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

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

相关文章

SpringMVC程序开发

1.什么是Spring MVC? Spring Web MVC是基于Servlet API构建的原始的Web框架,从一开始是就包含在Spring框架中。它的正式名称“Spring Web MVC"来自其源模板的名称(Spring-webmvc),但通常被称为“Spring MVC" 从上述的定义我们可…

Unity游戏源码分享-ARPG游戏Darklight.rar

Unity游戏源码分享-ARPG游戏Darklight.rar 玩法 项目地址:https://download.csdn.net/download/Highning0007/88105464

Android Studio 的版本控制Git

Android Studio 的版本控制Git。 Git 是最流行的版本控制工具,本文介绍其在安卓开发环境Android Studio下的使用。 本文参考链接是:https://learntodroid.com/how-to-use-git-and-github-in-android-studio/ 一:Android Studio 中设置Git …

Flowable-服务-微服务任务

目录 定义图形标记XML内容界面操作 定义 Sc 任务不是 BPMN 2.0 规范定义的官方任务,在 Flowable 中,Sc 任务是作为一种特殊的服务 任务来实现的,主要调用springcloud的微服务使用。 图形标记 由于 Sc 任务不是 BPMN 2.0 规范的“官方”任务…

在腾讯云服务器OpenCLoudOS系统中安装mysql(有图详解)

1. 创建MySQL安装目录 mkdir -p app/soft//mysql 2. 进入MySQL安装目录,下载,安装 cd /app/soft/mysql/ wget http://dev.mysql.com/get/mysql-5.7.26-1.el7.x86_64.rpm-bundle.tar 得到安装包: 解压安装包: 查看系统是否自带…

ts一些常用符号

非空断言操作符(!) 具体是指在上下文中当类型检查器无法断定类型时,一个新的后缀表达式操作符 ! 可以用于断言操作对象是非 null 和非 undefined 类型。具体而言,x! 将从 x 值域中排除 null 和 undefined 。 1. 赋值时忽略 undefined 和 null function…

JVM源码剖析之JIT工作流程

版本信息: jdk版本:jdk8u40思想至上 Hotspot中执行引擎分为解释器、JIT及时编译器,上篇文章描述到解释器过度到JIT的条件。JVM源码剖析之达到什么条件进行JIT优化 这篇文章大致讲述JIT的编译过程。在JDK中javac和JIT两部分跟编译原理挂钩&a…

游游的排列构造

示例1 输入 5 2 输出 3 1 5 2 4 示例2 输入 5 3 输出 2 1 4 3 5 #include<bits/stdc.h> using namespace std; typedef long long ll; const int N1e55; int n,k; int main(){scanf("%d%d",&n,&k);int xn-k1;int yn-k;int f1;for(int i1;i&l…

【前端】javascript+html+css 家具销售网站(代码+报告)

&#x1f449;博__主&#x1f448;&#xff1a;米码收割机 &#x1f449;技__能&#x1f448;&#xff1a;C/Python语言 &#x1f449;公众号&#x1f448;&#xff1a;测试开发自动化【获取源码商业合作】 &#x1f449;荣__誉&#x1f448;&#xff1a;阿里云博客专家博主、5…

工业RFID读写器在食品饮料加工生产的应用!

当前食品饮料加工行业快速发展&#xff0c;得益于科技的应用&#xff0c;科技不仅提高了生产效率&#xff0c;还提升了食品生产质量和食品安全水平。其中&#xff0c;RFID技术在食品饮料行业中的应用对于加工生产帮助很大&#xff0c;RFID技术未来在食品饮料行业仍有巨大的潜力…

Mac 定时重启 TouchBar 脚本(缓解闪烁问题)

背景 Mac 笔记本 TouchBar 是真的脆啊&#xff0c;合盖使用一段时间就废了&#xff0c;右侧一直闪烁简直亮瞎眼 &#x1f602; 经过观察&#xff0c;总结出闪烁规律如下&#xff1a; 工作状态&#xff1a;不断操作电脑时&#xff0c;触控栏处于工作状态&#xff0c;几乎不闪…

明晚直播:可重构计算芯片的AI创新应用分享!

大模型技术的不断升级及应用落地&#xff0c;正在推动人工智能技术发展进入新的阶段&#xff0c;而智能化快速增长和发展的市场对芯片提出了更高的要求&#xff1a;高算力、高性能、灵活性、安全性。可重构计算区别于传统CPU、GPU&#xff0c;以指令驱动的串行执行方式&#xf…

5.开发DAO组件 -- Spring Data JPA

开发DAO组件 作用&#xff1a;用来访问数据库 持久化技术&#xff1a;Spring Data, JPA, Mybaits&#xff0c;jOOQ 等 Spring Boot为常见持久化技术提供了支持。 现在使用 Spring Data JPA Spring Data JPA 使用Spring Data JPA来访问数据库&#xff0c;需要再项目添加两个…

Python工具箱系列(三十九)

使用zlib对数据进行压缩 现实世界中&#xff0c;大量存在着对数据压缩的需求。为此&#xff0c;python内置了zlib压缩库&#xff0c;可以方便的对任意对象进行压缩。 下述代码演示了对字符串进行压缩&#xff1a; import zlib# 压缩一段中文 originstr 神龟虽寿&#xff0c…

Mysql触发器

1.触发器 触发器是与表有关的数据库对象&#xff0c;指在 insert / update / delete 之前或之后&#xff0c;触发并执行触发器中定义的SL语句集合。触发器的这种特性可以协助应用在数据库端确保数据的完整性&#xff0c;日志记录&#xff0c;数据校验等操作。 使用别名 OLD 和 …

python将多张图片拼成一张矩阵图,合成一张大图

用Python实现将多张图片排列成n*m的图像矩阵图 目录 引言环境准备代码实现效果演示总结 引言 在图像处理和图像展示的应用中&#xff0c;将多张图片排列成一个图像矩阵图是一个常见的需求。本博客介绍如何使用Python实现将12张图片排列成n*m的图像矩阵图。 环境准备 为了实…

【C# 6.0】云LIS平台源码

基于云计算的区域LIS平台为医疗机构改善患者服务质量提供了强有力的支持&#xff0c;“以患者为核心”这一理念得到了充分实现&#xff0c;可以解决各医院LIS建设水平参差不齐的现状&#xff0c;并完善各医院内LIS系统的功能&#xff0c;实现数据标准统一、功能完善、性能可靠&…

F5 LTM 知识点和实验 2-负载均衡基础概念

第二章&#xff1a;负载均衡基础概念 目标&#xff1a; 使用网页和TMSH配置virtual servers&#xff0c;pools&#xff0c;monitors&#xff0c;profiles和persistence等。查看统计信息 基础概念&#xff1a; Node一个IP地址。是创建pool池的基础。可以手工创建也可以自动创…

【计算机网络】应用层协议 -- 安全的HTTPS协议

文章目录 1. 认识HTTPS2. 使用HTTPS加密的必要性3. 常见的加密方式3.1 对称加密3.2 非对称加密3.3 非对称加密对称加密 4. 引入CA证书4.1 CA认证4.2 数据签名4.3 非对称机密对称加密证书认证4.4 常见问题 5. 总结 1. 认识HTTPS HTTPS全称为 Hyper Text Tranfer Protocol over …

页面访问控制远程仓库

页面访问权限控制 什么是jwt身份认证 在前后端分离模式的开发中&#xff0c;服务器如何知道来访者的身份呢&#xff1f; 在登录后&#xff0c;服务器会响应给用户一个 令牌 &#xff08;token&#xff09;令牌中会包括该用户的id等唯一标识浏览器收到令牌后&#xff0c;自己…
最新文章