测试名词介绍

news2024/11/24 12:41:46

测试名词介绍

  • 一:敏捷测试
    • 1. 定义:
    • 2. 敏捷测试的核心:
    • 3. 敏捷测试的8大原则
    • 和传统测试的区别
  • 二:测试名词介绍
    • 瀑布模型
    • 回归测试
    • Alpha测试
    • Beta测试
    • 性能测试
    • 白盒测试
    • 黑盒测试
    • 灰盒测试
  • 三:测试流程
    • 单元测试 (unit test)
    • 集成测试
    • 系统测试(system test)
    • 验收测试
  • 三: 左移测试
    • 定义:
    • 测试左移实现步骤
  • 契约测试
  • 端到端测试

一:敏捷测试

1. 定义:

敏捷测试是一种遵循敏捷软件开发规则和原则的测试实践。
敏捷开发(Agile Development)是一种以人为核心、快速迭代、循序渐进的开发方法。
持续交付、持续反馈、持续学习

2. 敏捷测试的核心:

  • 质量内建
    敏捷测试的核心是质量内建。
    敏捷测试的目标不是发现更多的 Bug,而是帮助开发人员理解需求,提前预防缺陷
    尽快地交付高质量的软件,这就是质量内建。
  • 敏捷测试强调“与开发协作”、“自动化测试”、“客户思维”和“动态的测试策略调整”

3. 敏捷测试的8大原则

  • 尽早和持续的开展测试
  • 基于风险的测试策略是必须的
  • 测试计划、设计、和执行力要求简单
  • 能及时的完成质量全面评估
  • 软件本身是测试研究和分析的最主要对象
  • 满足所需的质量,测试的越快越好
  • 对测试技术精益求精
  • 不断反思,持续优化测试

和传统测试的区别

传统测试一次性交付整个系统,需要写完整的测试文档,测试计划
而敏捷测试则是将庞大的测试分成N分,每次进行迭代
(1)传统测试更强调测试的独立性,将“开发人员”和“测试人员”角色分得比较清楚。
而敏捷测试可以有专职的测试人员,也可以是全民测试,即在敏捷测试中,可以没有“测试人员”角色,强调整个团队对测试负责。
(2)传统测试具有明显的阶段性,从需求评审、设计评审、单元测试到集成测试、系统测试等,从测试计划、测试设计再到测试执行、测试报告,一个阶段一个阶段往前推进,
但敏捷测试更强调持续测试、持续的质量反馈,没有明确的阶段性界限。
(3)传统测试强调测试的计划性,而敏捷测试更强调测试的速度和适应性,侧重计划的不断调整以适应需求的变化。
(4)传统测试强调测试是由“验证”和“确认”两种活动构成的,而敏捷测试没有这种区分,始终以用户需求为中心,每时每刻不离用户需求,将验证和确认统一起来。
(5)传统测试关注测试文档,包括测试计划、测试用例、缺陷报告和测试报告等,要求严格遵守文档模板,强调测试文档评审的流程与执行等,
而敏捷测试更关注产品本身,关注可以交付的客户价值。敏捷测试中,强调面对面的沟通、协作,强调持续质量反馈、缺陷预防。
(6)传统测试鼓励自动化测试,但自动化测试的成功与否对测试没有致命的影响,
但敏捷测试的基础就是自动化测试,敏捷测试是具有良好的自动化测试框架支撑的快速测试。

二:测试名词介绍

瀑布模型

最早出现的软件开发模型,自上而下,相互衔接的固定次序,将软件的生命周期分为

  • 制定计划
  • 需求分析
  • 软件设计
  • 程序编写
  • 软件测试(单元测试,集成测试,系统测试)
  • 运维

回归测试

回归测试分为局部回归和完全回归
局部回归是指修改了旧代码后,重新进行测试以确认修改没有引入新的错误或导致其他代码产生错误。自动回归测试将大幅降低系统测试、维护升级等阶段的成本。
完全回归是将新增的功能和以前的功能全部测试

Alpha测试

一般指α测试,α测试是由一个用户在开发环境下进行的测试,也可以是公司内部的用户在模拟实际操作环境下进行的测试。α测试的目的是评价软件产品的FLURPS(即功能、局域化、可用性、可靠性、性能和支持)。尤其注重产品的界面和特色。α测试可以从软件产品编码结束之时开始,或在模块(子系统)测试完成之后开始,也可以在确认测试过程中产品达到一定的稳定和可靠程度之后再开始。α测试即为非正式验收测试。

Beta测试

是一种验收测试。所谓验收测试是软件产品完成了功能测试和系统测试之后,在产品发布之前所进行的软件测试活动,它是技术测试的最后一个阶段,通过了验收测试,产品就会进入发布阶段。验收测试一般根据产品规格说明书严格检查产品,逐行逐字地对照说明书上对软件产品所做出的各方面要求, 确保所开发的软件产品符合用户的各项要求。 通过综合测试之后,软件已完全组装起来,接口方面的错误也已排除,软件测试的最后一步——验收测试即可开始。验收测试应检查软件能否按合同要求进行工作,即是否满足软件需求说明书中的确认标准。

性能测试

是通过自动化的测试工具模拟多种正常、峰值以及异常负载条件来对系统的各项性能指标进行测试。
负载测试和压力测试都属于性能测试,两者可以结合进行。

  • 负载测试,确定在各种工作负载下系统的性能,目标是测试当负载逐渐增加时,系统各项性能指标的变化情况。
  • 压力测试是通过确定一个系统的瓶颈或者不能接受的性能点,来获得系统能提供的最大服务级别的测试。
  • 容量测试(Volume Testing): 确定系统最大承受量,譬如系统最大用户数,最大存储量,最多处理的数据流量等。

白盒测试

又称结构测试、透明盒测试、逻辑驱动测试或基于代码的测试。白盒测试是一种测试用例设计方法,盒子指的是被测试的软件,白盒指的是盒子是可视的,即清楚盒子内部的东西以及里面是如何运作的。"白盒"法全面了解程序内部逻辑结构、对所有逻辑路径进行测试。"白盒"法是穷举路径测试。在使用这一方案时,测试者必须检查程序的内部结构,从检查程序的逻辑着手,得出测试数据。贯穿程序的独立路径数是天文数字。
白盒测试的测试方法有代码检查法、静态结构分析法、静态质量度量法、逻辑覆盖法、基本路径测试法、域测试、符号测试、路径覆盖和程序变异。
白盒测试法的覆盖标准有逻辑覆盖、循环覆盖和基本路径测试。其中逻辑覆盖包括语句覆盖、判定覆盖、条件覆盖、判定/条件覆盖、条件组合覆盖和路径覆盖。

黑盒测试

它是通过测试来检测每个功能是否都能正常使用。在测试中,把程序看作一个不能打开的黑盒子,在完全不考虑程序内部结构和内部特性的情况下,在程序接口进行测试,它只检查程序功能是否按照需求规格说明书的规定正常使用,程序是否能适当地接收输入数据而产生正确的输出信息。黑盒测试着眼于程序外部结构,不考虑内部逻辑结构,主要针对软件界面和软件功能进行测试。
黑盒测试是以用户的角度,从输入数据与输出数据的对应关系出发进行测试的。很明显,如果外部特性本身设计有问题或规格说明的规定有误,用黑盒测试方法是发现不了的。

灰盒测试

是介于白盒测试与黑盒测试之间的一种测试,灰盒测试多用于集成测试阶段,不仅关注输出、输入的正确性,同时也关注程序内部的情况。灰盒测试不像白盒那样详细、完整,但又比黑盒测试更关注程序的内部逻辑,常常是通过一些表征性的现象、事件、标志来判断内部的运行状态。

三:测试流程

在这里插入图片描述

单元测试 (unit test)

是指对软件中的最小可测试单元进行检查和验证,单元是人为规定的最小的被测功能模块。
单元测试是在软件开发过程中要进行的最低级别的测试活动,软件的独立单元将在与程序的其他部分相隔离的情况下进行测试。

集成测试

也叫组装测试或联合测试。在单元测试的基础上,将所有模块按照设计要求(如根据结构图)组装成为子系统或系统,进行集成测试。

系统测试(system test)

是将经过集成测试的软件,作为计算机系统的一个部分,与系统中其他部分结合起来,在实际运行环境下对计算机系统进行的一系列严格有效地测试,以发现软件潜在的问题,保证系统的正常运行。系统测试的目的是验证最终软件系统是否满足用户规定的需求。
比较常见的、典型的系统测试包括恢复测试、安全测试、压力测试。系统测试主要内容包括:

  • 功能测试

即测试软件系统的功能是否正确,其依据是需求文档,如《产品需求规格说明书》。由于正确性是软件最重要的质量因素,所以功能测试必不可少。

  • 健壮性测试

即测试软件系统在异常情况下能否正常运行的能力。健壮性有两层含义:一是容错能力,二是恢复能力。

  • 恢复测试

恢复测试作为一种系统测试,主要关注导致软件运行失败的各种条件,并验证其恢复过程能否正确执行。在特定情况下,系统需具备容错能力。另外,系统失效必须在规定时间段内被更正,否则将会导致严重的经济损失。

  • 安全测试

安全测试用来验证系统内部的保护机制,以防止非法侵入。在安全测试中,测试人员扮演试图侵入系统的角色,采用各种办法试图突破防线。因此系统安全设计的准则是要想方设法使侵入系统所需的代价更加昂贵。

  • 压力测试

压力测试是指在正常资源下使用异常的访问量、频率或数据量来执行系统。在压力测试中可执行以下测试:
①如果平均中断数量是每秒一到两次,那么设计特殊的测试用例产生每秒十次中断。
②输入数据量增加一个量级,确定输入功能将如何响应。
③在虚拟操作系统下,产生需要最大内存量或其它资源的测试用例,或产生需要过量磁盘存储的数据。

验收测试

是部署软件之前的最后一个测试操作。在软件产品完成了单元测试、集成测试和系统测试之后,产品发布之前所进行的软件测试活动。它是技术测试的最后一个阶段,也称为交付测试。验收测试的目的是确保软件准备就绪,并且可以让最终用户将其用于执行软件的既定功能和任务。

三: 左移测试

定义:

  • 左移是在软件交付过程中尽早发现和防止缺陷的一种实践方法,目的是尽量在软件开发生命周期中尽早将测试任务左移,通过借助工具和测试手段更早地发现问题和预防问题,以提高产品质量。
  • 左移测试意味着在软件开发过程的早期阶段进行测试。参与需求评审、设计评审、代码评审等。
  • 加强了单元测试,代码的编写和单元测试同时进行,写好一个方法测试一个方法。

测试左移实现步骤

  • 编写单元测试,通过单元测试提前进行测试
  • Code Review,通过代码走读发现一些基础的问题
  • 参与需求评审,提出需求不清晰、不合理、遗漏等意见,了解开发的实现方式
  • 参与研发需求分解,协助梳理分解遗漏点
  • 参与概要、接口设计评审,协助梳理遗漏逻辑
  • 提早输出测试导图,开发编码前进行评审
  • 部分功能提测,提早开始测试
  • 自动化测试,用于回归确保旧版本功能正确性

契约测试

端到端测试

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

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

相关文章

Java RSA加解密算法学习

一、前言 1.1 问题思考 为什么需要加密 / 解密?信息泄露可能造成什么影响? 二、 基础回顾 2.1 加密技术 加密技术是最常用的安全保密手段,利用技术手段把重要的数据变为乱码(加密)传送,到达目的地后再…

nginx的前端部署方式

1. 什么是nginx Nginx是一款高性能的http 服务器/反向代理服务器及电子邮件(IMAP/POP3)代理服务器。 由俄罗斯的程序设计师Igor Sysoev所开发,官方测试nginx能够支支撑5万并发链接, 并且cpu、内存等资源消耗却非常低&#xff0…

javascript 数组详解

1.数组是可变的 数组内元素可以是不同的类型: 字符串一旦创建就不可变,但数组是可变的,且操作起来十分随意,例如: 直接修改数组长度,若新赋予长度小于原数组长度,会直接舍弃多余元素: 若新赋予…

【AI绘画】Midjourney和Stable Diffusion教程

之前我向大家介绍了这两个AI绘画网站: Stable Diffusion介绍: https://mp.csdn.net/mp_blog/creation/editor/130059509 Midjourney介绍: https://mp.csdn.net/mp_blog/creation/editor/130003233 前言 这里是新星计划本周最后一篇,主要…

python 连接oracle

前提,navicate成功连接oracle 1、下载cx_oracle,根据python版本下载whl,或者通过 ​pip install cx_Oracle -i http://pypi.douban.com/simple/ 下载地址: cx-Oracle PyPIhttps://pypi.org/project/cx-Oracle/#files2、navicate下instant…

​Auction Design in the Auto-bidding World系列一:面向异质目标函数广告主的拍卖机制设计...

导读: 传统拍卖机制不存在了!出价产品智能化成为行业发展趋势,自动出价(Auto-bidding)已成为互联网广告主营销的主流,经典效用最大化模型(Utility Maximizer)的假设已经不再能良好地…

使用 LXCFS 文件系统实现容器资源可见性

使用 LXCFS 文件系统实现容器资源可见性一、基本介绍二、LXCFS 安装与使用1.安装 LXCFS 文件系统2.基于 Docker 实现容器资源可见性3.基于 Kubernetes 实现容器资源可见性前言:Linux 利用 Cgroup 实现了对容器资源的限制,但是当在容器内运行 top 命令时就…

《金阁寺》金阁美之于幻想,我用摧毁它来成就其美

《金阁寺》金阁美之于幻想,我用摧毁它来成就其美 三岛由纪夫(1925-1970),日本当代小说家、剧作家、记者、电影制作人和电影演员,右翼分子。主要作品有《金阁寺》《鹿鸣馆》《丰饶之海》等。曾3次获诺贝尔文学奖提名,属…

基于Sketch Up软件校园建模案例分享

Acknowledgements: 由衷感谢覃婉柔、赵泽昊同学在本次课程实习中做出的巨大贡献,感谢本团队成员一起努力奋斗的岁月。 一、建模地点(中国地质大学(武汉)未来城校区图书馆周边) 中国地质大学(武汉…

关于ChatGPT的一些随笔

大家好,我是老三,最近几个月关于ChatGPT的信息可以说是铺天盖地。 “王炸,ChatGPT……” “xxx震撼发布……” “真的要失业了,xxx来袭……” “普通如何利用ChatGPT……” …… 不过老三前一阵比较忙,对ChatGPT…

【MySQL】锁详解——从结构分类到适用场景

我们要学习锁首先要了解下我们想了解的锁到底是什么🤔 而在MySQL中给某个数据加锁的本质其实就是在内存中创建一个锁结构与之关联,而这个锁结构就是我们常提到的MySQL的锁🔒 那么接下来的问题就是,这个锁结构长啥样呢&#xff1…

ASEMI代理ADI亚德诺AD8065ARTZ-REEL7车规级芯片

编辑-Z AD8065ARTZ-REEL7芯片参数: 型号:AD8065ARTZ-REEL7 −3dB带宽:145MHz 0.1 dB平坦度的带宽:7MHz 输入超速恢复时间:175ns 输出恢复时间:170ns 斜率:180V/μs 三阶拦截&#xff1a…

教育大数据总体解决方案(2)

系统管理对当前大数据基础平台的所有服务及组件版本、账户以及自动启动进行统一管理。 服务版本查看当前大数据基础平台的所有服务信息及版本状态。 服务用户和组查看当前大数据基础平台的所有用户信息。 服务自动启动对当前大数据基础平台的所有服务组件进行自启动设置。 后台…

【信息安全】EDR、HIDS、NDR、MDR、XDR 区别与联系

【前言】 随着安全态势的发展,为应对不同的安全防御场景需求,安全产品层出不穷,各大安全厂商也争先推出自家的安全产品/平台,这就导致产品种类繁多,信息量大而杂,本篇博文重点讲解EDR、HIDS、NDR、MDR和XDR…

LinuxGUI自动化测试框架搭建(二)- 详细设计框架设计

(二)-详细设计&框架设计1 需求分析2 技术栈3 框架设计3.1 框架说明3.2 框架执行流程4 预期结果4.1 测试过程log日志4.2 测试报告html格式4.3 测试报告邮件格式1 需求分析 对 实现需求 进行详细分析,主要有下: 功能说明使用U…

经典文献阅读之--FastFlowNet(轻量光流估计)

0. 简介 密集的光流估计在许多机器人视觉任务中起着关键作用。随着深度学习的到来,已经比传统方法以令人满意的精度预测了它。然而,当前的网络经常占用大量参数并且需要沉重的计算成本。这些缺点阻碍了在功率或内存受限的移动设备上的应用。为了应对这些…

Apache 网页优化与防盗链

目录 一、Apache网页优化概述 二、gzip介绍 Apache的压缩模块 配置网页压缩功能 1.检查是否安装 mod_deflate 模块 2.编译安装 Apache 添加 mod_deflate 模块 3.配置 mod_deflate 模块启用 4.检查安装情况,启动服务 5.测试 mod_deflate 压缩是否生效 三. 网页缓…

ChatGPT 不算新技术革命,带不来什么新机会

有人说:一个人从1岁活到80岁很平凡,但如果从80岁倒着活,那么一半以上的人都可能不凡。 生活没有捷径,我们踩过的坑都成为了生活的经验,这些经验越早知道,你要走的弯路就会越少。

DM8:达梦数据库REDO日志损坏修复

DM8:达梦数据库REDO日志损坏修复环境介绍1 启动数据库报错 CODE-7232 查看原实例(5237)初始化参数3 初始化相同参数的新数据库启停新库4 使用 dmmdf 工具 查看帮助5 查看原库(5237)的 db_magic6 修改新库(5236) REDO 日志的 db_magic 值6.1 新库(5236) DAMENG01.log6.2 新库(52…

浙江美格机械股份有限公司董事长——刘国方

现实工作与理想中的方向大相径庭 怎样从工作经历中汲取养分,磨练自身? 学历不高,自身敲门砖不硬 该如何努力才能弥补自身的学历短板? 想为传统企业焕发新生机 该如何在传统行业中搭建新平台? 观看本期节目和我一起寻找答案&#…