0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

单元测试:会变化的定义

北汇信息POLELINK 2022-11-18 10:12 次阅读

有一种东西,

如果它太小,需要付出的努力就太大;如果它太大,就很难测试。

没错!它是单元。

但是什么才是一个好的单元定义呢?为什么它如此重要?

单元的定义对测试过程有很大的影响,但同时单元的定义也是不精确的。如果以一种不恰当的方式定义单位,这可能意味着大量的努力甚至麻烦。术语“单元”的定义可见于ISO 26262、ISTQB、ASPICE和许多其他文件。

我们的结论是:单元是一个小的可测试的软件组件。不幸的是,这种定义非常模糊。这样的定义不是用于工具,而是用于评估和审计。因此,在大多数组织中,这个术语是单独指定的。

定义术语“单元”有两种方法:通用描述和体系结构描述。

pYYBAGN2zgKAK5l1AABHhnJ6tUY430.png

在通用描述中,单元将被定义为一个文件或一个函数。从特定的、体系结构的角度来看,单元是软件体系结构中的一个元素。基于体系结构的特定定义可以减少单元测试中测试对象的数量。以这种方式定义的单元可以包含多个文件中的多个函数。

这种方法不违反ISO 26262或ASPICE的要求。此外,如果体系结构是自上向下开发的,您可以将体系结构的更高级别指定为纯集成测试,从而也将减少单元测试级别的测试对象。在单元级别省略的测试会在之后的软件集成测试(SWE.5)中执行。

一些组织通过调整单元的定义来缩小他们自己的需求之间的差距。典型的补充包括:

更精确地定义单元,例如,在编程语言C中,将单元定义为函数级别的数据和指令的封装,或者

为单元构造过程提出要求,例如指定最大圈复杂度。

专业建议:对于具体项目来说,如果需求是好的,但太过笼统或太过严格,可以与客户讨论和协商,以定义一个一致的解决方案作为替代措施。这可以大大减少工作量。从风险的角度来看,定义单元的时间应该越早越好。

TPT可以测试所有类型的单元定义。从工具的角度来看,这并不是最重要的。为了将测试过程中产生的总工作量减少到最小,我们建议不要笼统地定义单元。这会为重构活动提供便利并减少额外的工作。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 代码
    +关注

    关注

    30

    文章

    4780

    浏览量

    68527
收藏 人收藏

    评论

    相关推荐

    嵌入式系统开发中的测试方法 嵌入式系统开发与AI结合应用

    嵌入式系统开发中的测试方法 嵌入式系统开发是一个复杂的过程,涉及到硬件和软件的紧密结合。测试是确保系统可靠性和性能的关键步骤。以下是一些常用的测试方法: 单元测试
    的头像 发表于 12-09 10:22 314次阅读

    开发者必读!CircleCI 组件测试单元测试全解析

    在软件开发中,测试是保证软件质量和可靠性的关键环节。作为领先的 CI/CD 平台,CircleCI 提供了支持自动化测试的强大工具。其中,单元测试和组件测试是两种重要的
    的头像 发表于 12-03 09:18 194次阅读

    汽车软件单元测试的重要性

    测试不充分密切相关,这引发了社会各界对汽车软件健壮性的重要性进行深入思考。本文将探讨汽车软件的测试,尤其是单元测试的重要性,以及WinAMS单元测试工具在这一过程中的关键作用。 一、
    的头像 发表于 11-29 10:57 153次阅读

    严格的单元测试造就完美的软件

    关键系统时,更是对软件质量提出了极高的要求。而单元测试作为软件开发过程中的核心环节,其重要性不言而喻。 单元测试的作用 单元测试是指对软件中的最小可测试
    的头像 发表于 11-26 13:22 164次阅读

    嵌入软件单元/集成测试工具专业分析

    引言 在现代软件开发过程中,单元测试作为确保代码质量的重要环节,得到了广泛的关注和应用。随着嵌入式系统的复杂性日益增加,对高效、可靠的单元测试工具的需求也愈加迫切。WinAMS作为一款专为嵌入
    的头像 发表于 11-19 16:41 221次阅读

    鸿蒙语言基础类库:ohos.application.testRunner TestRunner 测试

    TestRunner模块提供了框架测试的能力。包括准备单元测试环境、运行测试用例。
    的头像 发表于 07-12 09:32 295次阅读

    单元测试、集成测试自动化工具

    CoverageMaster winAMS : 适用于嵌入式目标机代码的单元测试/集成测试工具 全面支持嵌入式微机!验证嵌入式C/C++软件 实施以模块为单位的自动化单元测试工具 不需要
    的头像 发表于 06-26 13:41 439次阅读
    <b class='flag-5'>单元测试</b>、集成<b class='flag-5'>测试</b>自动化工具

    柔性制造单元及柔性的定义

    柔性制造单元(Flexible Manufacturing Cell,简称FMC)是一种高度自动化的生产系统,它能够根据生产需求的变化快速调整生产过程,以适应不同产品、不同批量的生产。柔性制造单元
    的头像 发表于 06-11 09:42 1322次阅读

    接口测试的工具有哪些种类

    单元测试框架 单元测试框架主要用于测试单个模块或函数的功能。虽然它们主要用于开发阶段,但也可以用于接口测试。 1.1 JUnit (Java) JUnit 是 Java 语言的
    的头像 发表于 05-30 15:07 700次阅读

    嵌入软件单元测试工具的作用

    嵌入软件单元测试工具是现代软件开发过程中不可或缺的一环。它的作用在于帮助开发人员对软件中的各个单元进行测试,以确保其功能的正确性和稳定性。单元测试是软件开发过程中的一种
    的头像 发表于 04-23 15:31 428次阅读
    嵌入软件<b class='flag-5'>单元测试</b>工具的作用

    LitePoint推出其最新的5G O-RAN无线电单元测试技术

    无线测试解决方案先进供应商LitePoint宣布将参加于4月12日在台北举行的2024年D Forum移动通信论坛,展示其最新的5G O-RAN无线电单元测试技术。
    的头像 发表于 04-11 15:26 499次阅读

    鸿蒙OS开发实战:【自动化测试框架】使用指南

    为支撑HarmonyOS操作系统的自动化测试活动开展,我们提供了支持JS/TS语言的单元及UI测试框架,支持开发者针对应用接口进行单元测试,并且可基于UI操作进行UI自动化脚本的编写。
    的头像 发表于 04-08 14:49 1372次阅读
    鸿蒙OS开发实战:【自动化<b class='flag-5'>测试</b>框架】使用指南

    单元/集成测试服务

    单元/集成测试旨在证明被测软件实现其单元/架构设计规范、证明被测软件不包含非预期功能。经纬恒润测试团队拥有丰富的研发经验、严格的流程管控,依据ISO26262/ASPICE等开展符合要
    的头像 发表于 02-29 13:27 377次阅读
    <b class='flag-5'>单元</b>/集成<b class='flag-5'>测试</b>服务

    Tessy—嵌入式软件单元测试/集成测试工具

    搭建测试环境、执行测试、评估测试结果并生成测试报告。目前Tessy被广泛应用在汽车电子客户中,在V模型开发中,Tessy主要应用在单元测试
    的头像 发表于 01-15 14:39 817次阅读
    Tessy—嵌入式软件<b class='flag-5'>单元测试</b>/集成<b class='flag-5'>测试</b>工具