首页 > 其他分享 >【软设】知识点速记3

【软设】知识点速记3

时间:2024-04-07 12:32:02浏览次数:26  
标签:知识点 测试 单元测试 速记 软设 开发者 模块 单元 确保

1.系统测试

1.1传统软件的测试策略

1.1.1单元测试

单元测试(Unit Testing)是软件开发过程中非常重要的一环,它针对程序中的最小可测试单元进行检查和验证。这些单元通常是函数、方法、类或模块等。单元测试的目的是确保每个单元都能按照预期工作,从而确保整个系统的质量和稳定性。

单元测试的重要性在于,它可以在代码编写的早期阶段就发现并修复问题,减少后续集成测试和系统测试时可能出现的问题。通过单元测试,开发者可以更有信心地交付高质量的代码,减少后期维护的成本和风险。

在进行单元测试时,开发者需要编写测试代码来模拟单元的各种输入和预期输出。这些测试代码通常与被测试的单元一起运行,以验证单元的行为是否符合预期。如果测试失败,开发者需要分析失败的原因,并修复代码中的错误。

单元测试通常遵循一些基本原则和最佳实践,如:

  1. 独立性:每个单元测试都应该独立于其他测试,以便于定位和解决问题。
  2. 自动化:测试应该能够自动运行,以便在代码变更时快速检查是否存在问题。
  3. 可重复性:测试应该能够在相同的条件下重复运行,以确保结果的一致性。
  4. 覆盖性:测试应该尽可能覆盖代码的所有路径和边界条件,以确保测试的全面性。

单元测试主要检查模块的以下五个特征:

  1. 模块接口:确保模块的接口正确,保证测试模块的数据流可以正确地流入、流出。这包括检查输入参数和形式参数在个数、属性、单位上的一致性,调用其他模块时所给实际参数的正确性,调用标准函数时所用参数的准确性,以及全局变量在各模块中的定义和用法的一致性。
  2. 局部数据结构:验证局部数据结构的正确性,如变量的说明是否合适,变量的初始值或默认值是否正确,变量名是否有错等。
  3. 执行路径:检查模块中重要的执行路径,确保所有可能的执行路径都已被测试覆盖。
  4. 出错处理:测试模块的出错处理能力,确保当模块遇到错误时能够正确处理并给出合适的反馈。
  5. 边界条件:边检条件的测试是单元测试的最后工作,也是非常重要的工作。软件容易在边界出现错误

为了有效地进行单元测试,开发者可以使用各种工具和框架来辅助测试代码的编写和执行。这些工具和框架通常提供了丰富的断言库和测试运行器,使得单元测试变得更加简单和高效。

总之,单元测试是软件开发过程中不可或缺的一环,它有助于确保代码的质量和稳定性,提高开发效率,降低维护成本。因此,在编写代码时,开发者应该重视并充分利用单元测试这一工具。

 

1.1.2集成测试

集成测试,也叫组装测试或联合测试,是单元测试的逻辑扩展。它主要在单元测试的基础上,将所有模块按照设计要求(如根据结构图)组装成为子系统或系统,然后进行测试。这种测试的目的在于验证在将所有的软件单元按照概要设计规格说明的要求组装成模块、子系统或系统的过程中,各部分工作是否达到或实现相应技术指标及要求。

集成测试的特点主要包括:

  1. 真实安装后测试,测试更接近真实使用情况。
  2. 可见性强,容易理解,业务人员或客户看一遍运行关键业务的集成测试后,会觉得比较放心。
  3. 模块真实调用&#

标签:知识点,测试,单元测试,速记,软设,开发者,模块,单元,确保
From: https://blog.csdn.net/m0_68467925/article/details/137417863

相关文章

  • 【软设】知识点汇总4
    1面向对象动态绑定:运行时静态绑定:编译时1.1面向对象分析认定对象组织对象对象间的相互作用基于对象操作1.2面向对象设计识别类及对象定义属性定义服务识别关系识别包  2uml中的图类图(ClassDiagram):描述一组对象、接口、协作和它们之间的关系,给出系统的......
  • 【知识点】Redis-缓存-缓存穿透
    缓存穿透:查询一个不存在的数据,Mysql查询不到也没有写入缓存,导致每次请求都会查询数据库。(比如恶意请求)解决方案:缓存空数据:返回数据为空时仍然缓存(但是需要加过期时间)。优点:简单缺点:消耗内存,可能存在数据不一致情况。布隆过滤器布隆过滤器使用Bitmap(位图)来记载一个数据是......
  • C语言之易错知识点统计
    hello,铁汁们,大家好呀,我是脆皮炸鸡。今天是4,6号,发现了很多自己以前没有意识到的知识点误区,记录下来和大家分享一下,由于我的水平有限,难免会出错。若是有什么错误,恳请大家告知,在这里多谢大家啦!大家有什么易错点也可以在评论区分享一下呦。C语言规定,在一个源程序中,main函数......
  • Java斐波那契查找知识点(含面试大厂题和源码)
    斐波那契查找(FibonacciSearch)是一种在有序数组中查找元素的高效算法,它基于斐波那契数列的性质。斐波那契查找是二分查找的一种改进,通过使用斐波那契数列来确定搜索范围,可以在某些情况下减少比较次数,特别是在数组较大时表现更为出色。以下是斐波那契查找的一些关键知识点:......
  • 数据结构之顺序表的相关知识点及应用
     个人主页(找往期文章包括但不限于本期文章中不懂的知识点):我要学编程(ಥ_ಥ)-CSDN博客目录顺序表的概念及结构顺序表的分类顺序表的实现 在顺序表中增加数据 在顺序表中删除数据 在顺序表中查找数据 顺序表源码 顺序表的概念及结构在了解顺序表之前,得先知道......
  • 最简单知识点PyTorch中的nn.Linear(1, 1)
    一、nn.Linear(1,1)nn.Linear(1,1) 是PyTorch中的一个线性层(全连接层)的定义。nn 是PyTorch的神经网络模块(torch.nn)的常用缩写。nn.Linear(1,1) 的含义如下:第一个参数 1:输入特征的数量。这表示该层接受一个长度为1的向量作为输入。第二个参数 1:输出特征的数量......
  • 机器学习知识点全面总结
    机器学习按照模型类型分为监督学习模型、无监督学习模型两大类。1、有监督学习有监督学习通常是利用带有专家标注的标签的训练数据,学习一个从输入变量X到输入变量Y的函数映射。Y=f(X),训练数据通常是(n×x,y)的形式,其中n代表训练样本的大小,x和y分别是变量X和Y的样本值。......
  • 【HTML5+CSS3】HTML知识点+自主练习
    一、W3C标准结构:HTML表现:CSS行为:JavaScript二、HTML常用标签排版标签(标题标签、段落标签、换行标签、分割标签、 文本格式化标签)媒体标签(图片标签、音视频标签)超链接标签(超链接标签)布局标签(div标签、span标签、HTML5新增语义化标签)三、HTML学生示例代码​<!--......
  • 一文了解JVM所有知识点
    文章目录类的加载过程Java虚拟机中有哪些类加载器?什么是双亲委派模型?为什么使用双亲委派模式?有哪些场景破坏了双亲委派模型SPI机制自定义类加载器破坏双亲委派机制线程上下文类加载器破坏双亲委派机制运行时数据区java中常用的常量池class模板类存放在哪里?元空间为什......
  • 趣学前端 | 类,我想好好继承它的知识点
    背景最近睡前习惯翻会书,重温了《JavaScript权威指南》。这本书,文字小,内容多。两年了,我才翻到第十章。因为书太厚,平时都充当电脑支架。JavaScript类话说当年类、原型、继承,差点给我绕晕。在JavaScript中,类使用基于原型的继承。如果两个对象从同一个原型继承属性(通常是以函......