单元测试四大过程

news2024/12/22 19:32:06

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

单元测试过程

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

图片描述

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

单元测试策划阶段

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

图片描述

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

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

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

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

图片描述

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

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

单元测试执行阶段

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

图片描述

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

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

图片描述

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

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

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

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

相关文章

ActiveMQ主从架构和集群架构的介绍及搭建

一、主从和集群架构的特点 1.1 主从架构的-Master/slave模式特点 读写分离,纵向扩展,所有的写操作一般在master上完成,slave只提供一个热备 1.2 集群架构-Cluster模式特点 分布式的一种存储,水平的扩展,消息的分布…

基于WOA优化的CNN-LSTM-Attention的时间序列回归预测matlab仿真

目录 1.算法运行效果图预览 2.算法运行软件版本 3.部分核心程序 4.算法理论概述 4.1卷积神经网络(CNN)在时间序列中的应用 4.2 长短时记忆网络(LSTM)处理序列依赖关系 4.3 注意力机制(Attention) 4…

聚类能代替分类吗?

聚类和分类是两种不同的机器学习方法,它们在处理数据时有着不同的目的和应用场景。 分类:分类是一种监督学习方法,它需要已标记的训练数据集。在分类中,算法会学习如何将输入数据映射到预定义的类别中。例如,给定一组包…

ActiveMQ 07 集群配置

Active MQ 07 集群配置 官方文档 http://activemq.apache.org/clustering 主备集群 http://activemq.apache.org/masterslave.html Master Slave TypeRequirementsProsConsShared File System Master SlaveA shared file system such as a SANRun as many slaves as requ…

开源相机管理库Aravis例程学习(一)——单帧采集single-acquisition

开源相机管理库Aravis例程学习(一)——单帧采集single-acquisition 简介源码函数说明arv_camera_newarv_camera_acquisitionarv_camera_get_model_namearv_buffer_get_image_widtharv_buffer_get_image_height 简介 本文针对官方例程中的第一个例程&…

vue快速入门(二十五)本地存储与初始化使用

注释很详细&#xff0c;直接上代码 上一篇 新增内容 本地获取数据数据存储到本地 源码 <!DOCTYPE html> <html lang"en"><head><meta charset"UTF-8"><meta name"viewport" content"widthdevice-width, initial…

Spire.PDF for .NET【文档操作】演示:合并 PDF 文档

需要合并 PDF 的原因有很多。例如&#xff0c;合并 PDF 文件允许您打印单个文件&#xff0c;而不是为打印机排队多个文档&#xff0c;组合相关文件通过减少要搜索和组织的文件数量来简化管理和存储多个文档的过程。在本文中&#xff0c;您将学习如何使用Spire.PDF for .NET将多…

JS-demo轮播图效果实现

原生JS开发轮播图效果 <!DOCTYPE html> <html lang"en"><head><meta charset"UTF-8" /><meta http-equiv"X-UA-Compatible" content"IEedge" /><meta name"viewport" content"widt…

【架构-13】云原生架构

云原生架构产生背景&#xff1f; &#xff08;1&#xff09;大量资源被占用且难以分享&#xff0c;上云后&#xff0c;云厂商提供统一的IaaS能力和云服务。 &#xff08;2&#xff09;提供极致性能的云原生算力。 &#xff08;3&#xff09;集成服务&#xff0c;构建管理数据、…

Adobe Premiere 2015 下载地址及安装教程

Premiere是一款专业的视频编辑软件&#xff0c;由Adobe Systems开发。它为用户提供了丰富的视频编辑工具和创意效果&#xff0c;可用于电影、电视节目、广告和其他多媒体项目的制作。 Premiere具有直观的用户界面和强大的功能&#xff0c;使得编辑和处理视频变得简单而高效。它…

Linux基础(持续更新~)

常见的Linux目录 1、“/”&#xff1a;根目录 2、“/root”&#xff1a;root 用户的家目录 3、“/home/username ”&#xff1a;普通用户的家目录 4、“/etc”&#xff1a;配置文件目录&#xff08;类似于Windows的注册表&#xff09; 5、“/bin ”&#xff1a;命令目录 …

简单3步制作纸质英语绘本的mp3英语朗读音频

孩子学英语&#xff0c;需要看很多英语绘本&#xff0c;而且要听配套的音频。但有些英语绘本是没有对应音频的&#xff0c;下面简单三步&#xff0c;就可以将任意英语绘本制作出对应的英语朗读音频。 第一步&#xff0c;手机拍照做成PDF文件&#xff1a; 绘本每一页拍照后&…

华为云迁移到AWS上云安全及部署,九河云保姆级教程

云计算已成为当今企业数字化转型的关键环节。随着越来越多的业务部署在云端,确保云计算环境的安全性成为各大企业关注的重点。本文将重点介绍在从华为云迁移到AWS过程中,如何规划和部署云安全体系,充分利用AWS提供的安全服务与最佳实践,最大限度地保护您的云上资产。我们九河云…

【编程Tool】Visual studio 2022社区免费版本的下载安装及使用

目录 1.下载Visual studio 2022 1.1 复制此链接至浏览器即可访问微软官网&#xff1a; 1.2 下拉官网页面&#xff0c;选择Community2022版软件并点击下载 1.3 下载完成后&#xff0c;双击可执行文件&#xff0c;进入下一步安装 2、安装 2.1 点击【继续】开始下载和安装 2.2 下…

计算机服务器中了devicdata勒索病毒怎么办?Devicdata勒索病毒解密工具步骤

网络技术的不断应用与发展&#xff0c;为企业的生产运营提供了极大便利&#xff0c;但也为企业的数据安全带来严重威胁&#xff0c;数据是企业的核心命脉&#xff0c;通过数据可以更好地调整企业的生产运营方向&#xff0c;帮助企业更好地做好规划调整&#xff0c;保护企业数据…

Deep Learning for Single Image Super-Resolution: A Brief Review

TMM 2019 用深度学习来解决SISR问题(single image super resolution)的问题&#xff0c;从两个方面 高效的网络结构&#xff0c;efficient architectures&#xff1b;有效的优化目标&#xff0c;OPTIMIZATION OBJECTIVES&#xff1b; 问题的定义 由LR y y y恢复HR x x x&a…

Android Studio通过修改文件gradle-wrapper.properties内容下载gradle

一、问题描述 在Android Studio中新建项目后会下载你所新建的项目的activity/gradle/wrapper目录下所配置的gradle-7.3.3-bin.zip包&#xff08;笔者的是该版本包&#xff09;&#xff0c;而大多数时候会下载失败&#xff0c;如下 二、解决办法 新建工程后&#xff0c;取消下…

VMware配置CentOS 7 并实现ssh连接

Vmware 17下载地址 ***永久许可证&#xff1a;***5Y012-8HL8P-0J8U0-032Q6-93KKF CentOS 7 下载地址 一、配置CentOS 如下 创建新的虚拟机&#xff0c;选择典型&#xff0c;点击下一步 选择上述下载镜像存储位置&#xff0c;选择镜像&#xff0c;点击下一步 3.填写相关信息…

Oracle 获取最大值,第二大,第三大,第 N 大值

目录 1、原始数据2、获取最大值记录3、获取第二大值记录4、获取第三大值记录 1、原始数据 select * from test_2024_04_15_001 order by 销量 desc,渠道2、获取最大值记录 select 渠道,销量 from ( select a.渠道, a.销量 from test_2024_04_15_001 a order by a.销量 desc,…

云原生:10分钟了解一下Kubernetes架构

Kubernetes&#xff0c;作为当今容器编排技术的事实标准&#xff0c;以其强大的功能和灵活的架构设计&#xff0c;在全球范围内得到了广泛的应用和认可。本文将深入简出地探讨Kubernetes的核心架构&#xff0c;帮助大家了解Kubernetes&#xff0c;为今后的高效的学习打下良好的…