大连网站建设酷网科技/小程序模板
七、测试类型(按工程阶段划分)
单集系确收
(一)单元测试
1、单元测试/模块测试
- 单元就是软件中最小单位(或模块)。可以是一个函数、一个过程、一个类。
- 主要依据是模块的详细设计文档。
- 价值在于尽早发现程序的一些问题,降低后期缺陷修复代价。
- 采用白盒、黑盒测试技术等进行,主要看测试需求。
- 单元测试可由开发和测试工程师共同完成。
- 针对软件程序模块进行正确性检验的测试工作
2、测试内容
- 单元测试主要是关注单元是否实现规定的功能,单元的逻辑是否正确,输入输出是否正确
- 局部数据:测试在单元内的数据结构是否保持完整
- 模块接口:模块接口既要调用其它接口,也要接受其它接口。
- 独立路径:信息无关的路径。是指在程序中至少引用了一个新的处理语句的集合,或者一个新条件的任意一条路径。
- 出错处理:单元在运行过程中发生差错时单元是否能有效处理差错,避免程序崩溃。
- 边界条件:对单元边界进行测试,确定单元边界是否正常。
(二)集成测试/组装测试/联合测试
1、概念
- 在单元测试基础上,将所有模块按照概要设计说明书和详细设计说明书的要求进行组装。主要是发现单元接口之间可能存在的问题。
- 概要设计阶段考虑如何进行集成测试
- 单元测试考虑各个单元内部有无问题,集成测试验证将各个单元之间合起来之后能否达到上一级设计的功能要求。
- 集成测试需要提交文档:集成测试计划、集成测试规格说明、集成测试分析报告。
- 检验程序单元或部件的接口关系,即针对软件体系结构的构造进行的测试
2、方式
-
一次性组装:
非增值式组装方式/整体拼装。
首先对每个模块分别进行模块测试,再把所有模块组装在一起进行测试,最终得到所求的软件系统。
优点:节省工时、人力
缺点:当发现问题时很难定位发生问题的地方 -
增值性组装:
渐增式组装
首先对一个个模块进行模块测试,然后将这些模块逐步组装成较大系统,组装中边连接边测试,最后通过增值逐步组成软件系统。
包括自顶向下的增值方式(主干模块先暴露问题)、自底向下的增值方式(最常出错的底层模块先暴露问题)、混合增值式方式(前两种的结合)
3、内容
- 各模块连接时,穿越模块接口的数据是否丢失
- 一个模块的功能是否会对另一个模块的功能产生不利影响
- 各个子功能组合,能否达到预期要求的父功能
- 全局数据结构是否有问题
- 单个模块的误差累积是否会放大
4、完成标志
- 成功执行测试计划中所规范的所有集成测试
- 修正所有错误
- 测试结果通过专门小组评审
5、桩模块/驱动模块
- 桩模块:底层的模块。模拟调用模块功能的模块。也叫存根模块。用以代替所测模块调用的子模块。模块可以做少量的数据操作,不需要把子模块的所有功能都带进来,但不允许什么事情也不做。
- 驱动模块:模拟上一级模块调用测试模块的模块。相当于所测模块的主程序。它接收测试数据,把这些数据传送给所测模块,最后再输出实测结果。
(三)系统测试
1、概念
- 发现软件与系统定义不符合或与之矛盾的地方
- 集成整个系统元素(包括硬件、外设、网络和系统软件、支持平台等)
- 目的是验证最终软件系统是否满足用户规定的需求
- 为验证和确认系统是否达到其原始目标,而对集成的硬件和软件系统进行的测试
2、内容
- 按照需求规格说明书逐一验证系统的质量特性
功能测试
健壮性测试:容错能力;恢复能力
3、典型测试
- 恢复测试:主要检查系统的容错能力
- 安全测试:验证系统内部的保护机制
- 压力测试:通常用于测试应用程序或系统在高负载、高压力情况下的性能和稳定性。(异常访问量、频率或数据量)
(四)确认测试/有效性测试
- 验证软件的功能和性能以及其他特性是否与用户要求一致,由开发方组织
- 主要内容:以规格说明书为主来开展、确认软件有效性;做软件配置的复查工作
- 进行有效性测试 <— 黑盒测试
- 软件配置复查
- 检验与证实软件是否满足软件需求说明书中规定的要求
(五)验收测试
- 用户为主
- 一般使用生产中的实际数据进行测试
- 决定是否接收或拒收系统
- 按照项目任务书或合同、约定的验收依据文档等进行的整个系统的测试与评审,决定是否接收或拒收系统。
八、测试类型(按执行代码划分)
(一)动态测试
需要运行代码去发现错误。
1、黑盒测试法
2、白盒测试法
3、灰盒测试法
- 介于黑白盒之间
- 既考虑程序内部结构和逻辑,又考虑功能
(二)静态测试
不需要运行程序,通过人为审查程序发现错误。
1、代码审查
2、代码走查
九、测试类型(按实施主体划分)
(一)开发方测试
- 开发方 开发环境下
- Alpha测试
- 指在软件开发完后,开发方要对提交的软件进行全面的自我检查与验证,它可以队软件产品编码结束之后开始,或在模块(子系统)测试完成后开始,也可以在确认测试过程中产品达到一定的稳定和可靠程度之后再开始。
(二)用户测试
- 用户 用户应用环境下
- Beta测试
- 用户通过运行和使用软件,检测与验证软件是否符合自己预期的要求
(三)第三方测试
- 第三方
- 技术、财务、管理等独立于开发方、用户方的第三方组织
- 独立测试
十、测试类型(按关联代码划分)
集成测试阶段采用黑盒和白盒测试相结合的方法
(一)白盒测试
- 逻辑和结构
- 结构测试/逻辑驱动测试/基于代码的测试
- 白盒测试把软件视为一个透明的盒子,盒子中程序的每一步如何进行分支、如何进行控制、数据如何流动……
- 基于程序内部的结构、逻辑来设计测试用例
(二)黑盒测试
- 功能
- 功能测试/基于规格说明书的测试/基于数据驱动的测试
- 不透明的黑色盒子,不清楚内部程序的结构和逻辑
- 从用户角度去考虑产品的功能、特性并验证
- 主要用于集成测试和确认测试阶段
十一、测试类型(按质量特性划分)
十二、测试类型(按符合性情况划分)
(一)符合性测试
测试软件有没有符合相关的要求。
1、先决条件
- 符合性准则文件(标准、合同等)
- 就绪的软件(软件所有项均为可用状态、文档)
- 软件的系统元素
十三、测试类型(回归测试)
(一)软件有变动的情况
软件发生变动时需要进行回归测试。
1、对缺陷修复
- 首先验证缺陷是否正确修复
- 然后测试缺陷修复可能影响到的功能是否正确
2、对新增功能
- 验证新功能的正确性
- 测试可能受到影响的其他功能
3、对删减功能
- 检测是否影响到保留的功能
十四、软件测试工具
JMeter
- JMeter:是一个性能测试工具,同loadrunner类似,他功能较多,我们常用的功能是用imeter模拟多浏览器对网站做压力测试。
LoadRunner
- LoadRunner:是一种预测系统行为和性能的负载测试工具。通过以模拟上千万用户实施并发负载及实时性能监测的方式来确认和查找问题,LoadRunner能够对整个企业架构进行测试。通过使用LoadRunner,企业能最大限度地缩短测试时间,优化性能和加速应用系统的发布周期。 LoadRunner是一种适用于各种体系架构的自动负载测试工具,它能预测系统行为并评估系统性能。
JTest
-
JTest:是一个综合的发展广泛的实践证明,以提高开发团队的工作效率和软件质量的自动化测试解决方案。侧重于实践验证的Java代码和应用程序,无缝集成Parasoft的SOAtest以使最终结束今天的复杂的,分布式的应用和交易的功能和负载测试。
-
JBuilder:是一个可视化JAVA开发工具。它是在Java2平台上开发商业应用程序、数据库、发布程序的优秀工具。
相关文章:

第12章 软件测试基础(第三部分)测试类型、测试工具
七、测试类型(按工程阶段划分) 单集系确收 (一)单元测试 1、单元测试/模块测试 单元就是软件中最小单位(或模块)。可以是一个函数、一个过程、一个类。主要依据是模块的详细设计文档。价值在于尽早发现…...

open-vm-tools使用虚机的拷贝/粘切
open-vm-tools 是一组用于 VMware 虚拟机中的开源工具,它们提供了一些与虚拟机操作和管理相关的功能。这些工具与 VMware 虚拟化平台集成,可以在虚拟机中提供更好的性能和功能。以下是一些 open-vm-tools 提供的功能: 1. 虚拟机增强功能: open-vm-tools 提供了与 VMware 虚…...

CKEditor编辑器的简单使用方法,取值,赋值
先从官网下载包。CKEditor 4 - Download Latest Version. 一:在项目里引用JQ基础包和CK的JS包 <script src"/JS/jquery-3.4.1.js?v1.0"></script><script src"/ckeditor/ckeditor.js"></script> 二:在表…...

创建一个线程对象需要花费多少内存空间
创建一个std::thread对象所需的内存空间大小并不是固定的,因为它取决于多种因素,包括C运行时库的实现、编译器优化、以及可能的平台和架构差异。 std::thread对象本身是一个轻量级的控制块,它主要用于管理线程的执行,包括保存线程…...

Java -- (part23)
一.网络编程 1.概述 在网络通信协议下,不同计算机上运行的程序,进行数据传输 2.软件架构 CS架构:客户端和服务端 BS架构:浏览器和服务端 3.服务器概念 安装了服务器软件的计算机 4.通信三要素 IP地址 a.概述 计算机的唯一标识,用于两台计算机之间的链接 b.特殊的IP…...

1. C++入门:命名空间及输入输出
C相比C的变化 兼容C面向对象泛型C的不足的弥补 为什么要有命名空间 在C/C中,变量、函数和后面要学到的类都是大量存在的,这些变量、函数和类的名称将都存在于全局作用域中,可能会导致很多冲突。使用命名空间的目的是对标识符的名称进行本地…...

【Kotlin】Java三目运算转成 kotlin 表达
这行代码会直接计算 array.size 1 的布尔值,并将其赋值给 result。在 Kotlin 中,不需要使用三元操作符,因为条件表达式本身就返回一个布尔值 java 中三木运算: int [] array new int[]{1, 2, 3, 4, 5}; boolean test array &g…...

如何安全可控地进行内外网跨网络传输文件?
跨网络传输文件通常指的是在不同的网络环境之间移动数据,这在现代企业运营中非常常见。随着网络技术的高速发展,为了有效地保护内部的核心数据资产,企业一般会采用内外网隔离的策略。在进行内外网跨网络传输文件时,需要考虑多种因…...

Python Json数据解析
本篇主要介绍Python 中json数据如何解析、转化、保存和加载。 目录 Json数据解析 概念 作用 Json文件组成 Json转化为Python数据类型 Python数据类型转化为json 写入本地json文件 读取本地的json文件 总结 Json数据解析 概念 一种保存数据的格式 作用 可以保存本地…...

pyinstaller打包pytorch和transformers程序
记录使用pyinstaller打包含有pytorch和transformers库的程序时遇到的问题和解决方法。 环境和版本信息 操作系统:Windows 11 Python:3.10.12 pyinstaller:5.13.0 torch:2.2.2 transformers:4.40.1 打包过程和问…...

西门子数控网络IP设定配置
总结:menuselect-诊断-屏幕下方右翻页找到tcp/ip,进去选择tcp/ip诊断,进去选择x130网口,点击更改, 如果没有更改,menuselect-调试-口令,输入口令 sunrise 然后重新配置tcp/ip,配置完…...

[Unity]备份许可文件
原因:因Unity需要重新恢复出厂设置,所以需要先将许可文件本分到本地,以便重新初始化后输入许可。 1)登录管理网络web界面,在服务页面打开SSH 2)ssh到管理网络,使用service用户登录 3…...

第十五届蓝桥杯省赛大学B组(c++)
很幸运拿了辽宁赛区的省一,进入6月1号的国赛啦... 这篇文章主要对第十五届省赛大学B组(C)进行一次完整的复盘,这次省赛2道填空题6道编程题: A.握手问题 把握手情景看成矩阵: 粉色部分是7个不能互相捂手的情况 由于每个人只能和其他人捂手, 所以黑色情况是不算的 1和2握手2和…...

Python Flask框架(一)初识Flask
Flask是使用Python编写的Web微框架。Web框架可以使我们不用关心底层的请求响应处理,更方便高效的编写Web程序。Flask有两个主要依赖,一个是WSGI(Web Server Gateway Interface,web服务器网关接口)工具集,另…...

VS2022 .Net6.0 无法打开窗体设计器
拿Vs2022 建了个Demo,运行环境是net6.0-windows,无论双击或是右键都打不开窗体设计器 打开项目目录下的*.csproj.user <?xml version"1.0" encoding"utf-8"?> <Project ToolsVersion"Current" xmlns"htt…...

Linux学习之高级IO
之前的内容我们基本掌握了基础IO,如套接字,文件描述符,重定向,缓冲区等知识都是文的基本认识,而高级IO则是指更加高效的IO。 对于应用层,在读写的时候,本质就是把数据写给OS,若一方…...

一分钟了解Polysciences PEI 40K转染试剂的原理
在细胞实验中,细胞转染大概是最常用、最基础的实验技能。转染细胞的方法很多,而PEI作为带有高电荷阳离子的多聚物,非常容易结合带负电荷的DNA分子,形成复合物,在HEK293和CHO等细胞中转染效率较高,常用于大规…...

Clickhouse IP 函数
IPv4NumToString(num) 将数字类型ip转换为IPv4格式。 Takes a UInt32 number. Interprets it as an IPv4 address in big endian. Returns a string containing the corresponding IPv4 address in the format A.B.C.d (dot-separated numbers in decimal form). Alias: …...

【Python】numpy.ptp()
numpy.ptp() 函数是 NumPy 库中的一个有用函数,用于计算数组中的“峰到峰”(peak-to-peak)值,即数组中的最大值与最小值之差。这个函数可以帮助快速评估数组中数据的变化范围,常用于信号处理、数据分析等领域中&#x…...

The provided password or token is incorrect or your account
IDEA使用git技巧 【/n】 01 问题出现场景 我的gitlab上个月生成的token到期了,于是今天推上去的时候报了这个错误 The provided password or token is incorrect or your account has 2FA enabled and you must use a personal access token instead of a password. See ht…...

常见的shell命令
以下是一些常见的shell命令: cd:改变当前目录;ls:列出目录中的文件和子目录;mkdir:创建一个新的目录;touch:创建一个新的空文件或更新已存在的文件的时间戳;rmÿ…...

堆栈打印跟踪Activity的启动过程(基于Android10.0.0-r41),framework修改,去除第三方app的倒计时页面
文章目录 堆栈打印跟踪Activity的启动过程(基于Android10.0.0-r41),framework修改,去除第三方app的倒计时页面1.打印异常堆栈2.去除第三方app的倒计时页面3.模拟点击事件跳过首页进入主页 堆栈打印跟踪Activity的启动过程(基于Android10.0.0-r41)&#x…...

只允许内网访问时,如何设置hosts
1、Hosts文件简介 hosts文件是一个没有扩展名的计算机文件,用于将主机名与对应的 IP 地址关联起来。在操作系统中,hosts文件通常用于在本地解析域名,以便将域名映射到特定的IP地址。这个文件可以用来屏蔽广告、加速访问特定网站、解决DNS解析…...

nature《自然》期刊文献怎么在家查看下载
nature《自然》期刊我们都知道,是世界上历史悠久的、最有名望的科学杂志之一。下载该期刊文献是需要使用权限的,如果你没有nature《自然》期刊的资源,又该如何获取呢?请看本文的经验分享。 一、先百度“文献党下载器” 在文献党下…...

python作业五
题目:注册登录 制作一个注册登录模块 注册:将用户填入的账户和密码保存到一个文件(users.bin) 登陆:将用户填入账户密码和users.bin中保存的账户密码进行比对,如果账户和密码完全相同 那 么登录成功,否则登录失败…...

经典的设计模式和Python示例(一)
目录 一、工厂模式(Factory Pattern) 二、单例模式(Singleton Pattern) 三、观察者模式(Observer Pattern) 一、工厂模式(Factory Pattern) 工厂模式(Factory Pattern…...

Ubuntu服务器如何安装桌面
更新软件库 apt-get update 升级软件 apt-get upgrade 安装ubuntu桌面系统 apt-get install ubuntu-desktop 运行过程需要手动确认两次,选择 Y。 安装完成之后,终端输入 reboot,重启服务器。...

填报表如何实现电话号码的校验
单元格校验时,只能输入数字和特定字符(-),即实现固话和手机号码的校验,保证录入的规范,应如何实现? 解决方案:使用正则表达式实现校验效果,如下图所示: 校验…...

揭秘全网热门话题:抖音快速涨粉方法,巨量千川投流助你日增10000粉
在当今社交媒体的时代( 千川投流:hzzxar)抖音成为了年轻人分享自己才华和生活的平台。然而,要在抖音上快速获得关注和粉丝,却不是一件容易的事情。今天,我们将揭秘全网都在搜索的抖音快速涨1000粉的秘籍,带…...

电脑提示‘找不到msvcr110dll,无法继续执行代码’的解决方法,3分钟快速修复
不知道大家有没有遇到过这种情况,无端端电脑提示你找不到msvcr110dll,无法继续执行代码?当出现这个情况,证明你的某个程序就已经运行不了,你需要去修复这个错误,才能正常的运行程序,下面我们一起来详细的了…...