单元测试四大过程

单元测试四大过程(蓝桥课学习笔记)

单元测试过程

单元测试是软件测试过程中的一个关键环节,它与集成测试、系统测试一样,分为测试策划、测试设计、测试执行和测试总结几个阶段。

图片描述

单元测试过程中每个阶段需要完成的主要工作如下:

单元测试策划阶段

单元测试策划阶段的主要工作是完成单元测试计划。在这个过程中,测试人员会根据项目计划、被测试软件的设计文档对被测试软件单元进行分析并确定以下内容,形成测试计划文档:

图片描述

  • 确定需要测试的软件特性:根据设计文档的描述确定软件单元的功能、性能、接口、数据结构、设计约束等内容和要求并对其进行标识,从中确定需测试的软件特性;
  • 确定测试的充分性要求:根据测试目标、单元的重要性与约束条件等,确定测试应覆盖的范围及这些范围的覆盖程度(例如,语句覆盖率、分支覆盖率、基本路径覆盖率等);
  • 确定测试终止条件:在测试计划中,我们需要明确单元测试的结束条件,即什么时候可以结束单元测试。测试结束一般分为两种情况,一种是测试通过正常结束单元测试(如,测试充分性是否达到要求),另一种是导致测试异常结束的可能情况(例如,出现一些编码错误导致单元测试无法继续进行等);
  • 确定测试资源要求:包括测试过程中需要的软件、硬件、人员数量、人员技能等资源要求;
  • 确定测试需要的技术和方法:例如,测试数据生成的方法、测试结果获取方法等;
  • 确定测试时间进度;
  • 对测试过程中可能存在的风险进行分析与评估,制定风险应对措施;
  • 需交付的工作产品:单元测试需交付的工作产品一般包括测试计划、测试用例、测试记录、缺陷报告、测试报告等。

单元测试计划完成以后,一般需要组织相关人员进行评审,评审通过后方可进入下一步工作。单元测试计划评审的内容主要包括:

  • 测试的范围、资源、进度、终止条件等是否明确;
  • 测试方法是否可行、合理、有效;
  • 风险的分析与应对措施是否准确可行;
  • 测试文档是否符合规范。
单元测试设计阶段

单元测试计划评审通过后即可以进入测试设计阶段,测试设计阶段主要完成以下工作:

图片描述

  • 设计测试用例:将需要测试的软件特性进行分解,运用测试用例设计方法针对分解后的每种情况分别设计测试用例;
  • 确定测试用例执行顺序:可以从测试用例失效造成的影响、资源约束、风险等方面进行考虑;
  • 准备测试数据:包括获取现有的测试数据和生成新的数据,并按照要求验证所有的数据;
  • 编写测试程序:包括开发单元测试的驱动模块和桩模块,以及测试支持工具等;
  • 搭建测试环境。

为了保证测试的有效性,单元测试过程中的工作产品,如测试用例等也需要按照项目的要求进行评审。

单元测试执行阶段

单元测试执行阶段测试人员的主要工作是按照单元测试计划和单元测试设计阶段产出的测试用例、用例执行顺序等的内容和要求执行测试,主要包括:

图片描述

  • 执行测试用例并记录结果:按照测试计划、测试用例执行顺序等文档的要求依次执行测试用例,将每个测试用例的期望结果与实际执行结果进行比较判定该用例是否通过,并记录执行结果;
  • 提交并跟踪缺陷:如果程序的实际输出结果与测试用例的预期结果不一致,需提交缺陷给相关开发人员进行修复,并对缺陷进行跟踪直到缺陷正确修复为止;
  • 回归测试:代码中的缺陷修复并验证完成后,需评估该缺陷的影响范围并进行回归测试,确保缺陷已正确修复且未影响到其他功能。
单元测试总结阶段

在单元测试总结阶段,测试人员应根据被测软件的设计文档、单元测试计划、测试记录、缺陷报告等内容对测试工作进行总结,完成单元测试报告。单元测试报告的内容与系统测试的内容类似,主要包括:

图片描述

  • 测试范围总结:总结本次单元测试的具体范围。如果测试过程中有未能被测试活动充分覆盖的范围,需在报告中说明未测试到的范围及原因;
  • 测试过程分析:测试报告中需对测试过程中的进度、资源、测试用例执行等情况进行总结分析;
  • 缺陷分析:与系统测试类似,单元测试报告中需对缺陷的类别、严重程度、解决情况等进行分析;
  • 遗留问题:如果测试过程中有遗留问题,需在报告中记录这些问题及未解决的原因;
  • 测试结论:测试报告中需明确地给出本次测试的结论(通过或不通过);
  • 评价与建议:测试报告中还需将测试结果与软件设计文档对照,对软件单元的设计与实现作出评价,并提出改进建议。

同样,测试总结阶段也需要按项目要求进行相应的评审工作,评审测试执行活动的有效性、测试结果的正确性和合理性,以及是否达到了测试目的、测试文档是否符合相关标准规范等。

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

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

相关文章

Ubuntu配置VScode的C++环境

在Ubuntu系统下配置C环境,并运行helloworld 1. 下载VScode 我这里使用的是星火应用商店,在商店里面可以直接下载安装 http://spark-app.store/ 2.创建文件夹 3.启动VScode并打开该文件夹 4.安装以下几个扩展 PS:Clang这个插件别安装&…

使用TomCat写Film前后端项目0414

使用TomCat写Film前后端项目源文件0414-CSDN博客 实现功能: 得到数据库所有电影数据在首页显示出来 添加 删除 修改 点击修改,获取编号id,传入到根据id编号查询数据的控制器转发数据到 修改的jsp页面。 获取修改数据传入到根据id修改数据的控…

【word2pdf】Springboot word转pdf(自学使用)

文章目录 概要整体介绍具体实现官网pom文件增加依赖 遇到的问题本地运行OK,发布到Linux报错还是本地OK,但是Linux能运行的,但是中文乱码 小结 概要 Springboot word 转 pdf 整体介绍 搜了一下,发现了能实现功能的方法有四种 U…

JDBC 数据库连接

文章目录 JDBC核心技术第1章:JDBC概述1.1 数据的持久化1.2 Java中的数据存储技术1.3 JDBC介绍1.4 JDBC体系结构1.5 JDBC程序编写步骤 第2章:获取数据库连接三要素2.1 要素一:Driver接口实现类2.1.1 Driver接口介绍2.1.2 加载与注册JDBC驱动 2…

SETR——Rethinking系列工作,展示使用纯transformer在语义分割任务上是可行的,但需要很强的训练技巧

题目:Rethinking Semantic Segmentation from a Sequence-to-Sequence Perspective with Transformers 作者: 开源:https://fudan-zvg.github.io/SETR 1.研究背景 1.1 为什么要研究这个问题? 自[ 36 ]的开创性工作以来,现有的语义分割模型主要是**基于全卷积网络( FCN )的…

windows网络驱动开发

基石:WFP 1、简介 Windows过滤平台(Windows Filtering Platform, WFP),是从Vista系统后新增的一套系统API和服务。开发者可以在WFP框架已划分的不同分层中进行过滤、重定向、修改网络数据包,以实现防火墙、入侵检测系…

GNU Radio Radar Toolbox编译及安装

文章目录 前言一、GNU Radio Radar Toolbox 介绍二、gr-radar 安装三、具体使用四、OFDM 雷达仿真 前言 GNU Radio Radar Toolbox(gr-radar)是一个开放源码的工具箱,用于 GNU Radio 生态系统,主要目的是为雷达信号处理提供必要的…

JDK自带的线程池有哪些?

1、Executors.newFixedThreadPool(4); // 核心线程 传几个就有几个核心线程和最大线程数 2、Executors.newCachedThreadPool(); // 核心线程0 ,全是临时工,最大线程数为21亿 3、Executors.newScheduledThreadPool(4); // 传几个就有几个核心线程&#xf…

OSPF 开放式最短路径优先协议

目录 技术产生原因:因为RIP存在不足 OSPF优点: RIPV2和OSPFV2比较: 相同点: 不同点: OSPF的结构化部署 --- 区域划分 区域划分的主要目的: 区域边界路由器 --- ABR : 区域划分的要求&am…

怎么做预约功能_让服务变得更便捷

在快节奏的现代生活中,时间成为了我们最宝贵的财富。无论是工作、学习还是休闲娱乐,我们都希望能够更加高效地利用每一分每一秒。而预约功能的出现,正是为了满足这一需求,让我们的生活变得更加便捷、高效。 工具/原料 微信小程序…

ABAP CONVERSION_EXIT_ATINN_INPUT

CONVERSION_EXIT_ATINN_INPUT 因为在直接使用ZMM015这个特性值会报错 点击执行之后: 然而这个是N类型的,我们的筛选条件是C类型的,数据类型是不匹配的。 这个是经过转换的

第一届AI Agent智能体现场开发大赛报名开启!8月上旬火热开赛~

由联想拯救者、AIGC开放社区、英特尔携手主办的“AI生成未来第二届拯救者杯OPENAIGC开发者大赛”已经正式启动,“2024 AI Agent极限挑战赛”作为特设专项赛道,也将同步于8月上旬开赛,参赛者将在更加紧张刺激的现场比赛中展现其技术与创造力。…

ActiveMQ 任意文件上传漏洞复现

一、使用弱口令登陆 ​ 访问 http://ip:8161/admin/ 进入admin登陆页面,使用弱口令登陆,账号密码皆为 admin,登陆成功后,headers中会出现验证信息 ​ 如: Authorization: Basic YWRtaW46YWRtaW4 # 二、利用PUT协议上…

程序设计语言(LOGO/Scratch/VB/C)

程序设计语言篇 文章目录 程序设计语言篇一、LOGO编程语言二、Scratch语言三、Visual Basic语言3.1 开发工具及语言特点3.2 常量与变量3.3 数据类型3.4 运算符&表达式3.4 常用的内部函数3.5 输入和输出3.6 选择与循环结构3.7 消息对话框四、C语言4.1 开发工具及语言特点4.2…

OpenAI开设首个亚洲办公室,定制GPT-4模型Token成本降低47%|TodayAI

OpenAI今日宣布,在日本东京设立新办公室,标志着该公司在亚洲市场的正式扩展。东京作为全球科技领域的领导者,其独特的服务文化和创新社区,是OpenAI选择作为亚洲第一站的理想地点。公司致力于与日本政府、当地企业和研究机构合作&a…

【解决】Spring Boot创建项目常见问题

🎥 个人主页:Dikz12🔥个人专栏:Spring学习之路📕格言:吾愚多不敏,而愿加学欢迎大家👍点赞✍评论⭐收藏 目录 idea无maven选项 无效发行版17 类⽂件具有错误的版本 61.0, 应为 …

Vue 指令

Vue根据不同的指令&#xff0c;针对标签实现不同的功能 指令&#xff1a;带有v-前缀的特殊的标签属性 <!-- Vue指令--> <div v-html"str"></div><!-- 普通标签属性 --> <div class"box"></div> 目录 v-html v-sho…

反爬虫之代理IP封禁-协采云IP池

反爬虫之代理IP封禁-协采云IP池 1、目标网址2、IP封禁4033、协采云IP池 1、目标网址 aHR0cDovL3d3dy5jY2dwLXRpYW5qaW4uZ292LmNuLw 2、IP封禁403 这个网站对IP的要求很高&#xff0c;短时间请求十几次就会遭关进小黑屋。如下图&#xff1a; 明显是网站进行了反爬处理&…

使用剧本批量、自动管理逻辑卷设备实战

目录 1、目的 2、思考&#xff1a;这个时候使用ansible剧本比shell脚本的优势&#xff1a; 3、实战部署 3.1 让设备支持逻辑卷技术 3.2 使用lvol模块创建逻辑卷设备 3.3 使用filesystem模块来完成设备的格式化 3.4 最终剧本 3.5 执行剧本测试 3.6 查看受管主机的逻辑卷…

R语言 并行计算makeCluster报错

问题&#xff1a;使用parallel包进行并行计算&#xff0c; cl <- makeCluster(detectCores()) 出现以下问题&#xff1a; 解决方式&#xff1a;用makeClusterPSOCK命令代替即可 library("future") cl <- makeClusterPSOCK(124, revtunnel TRUE, outfile &…