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

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

3天内不再提示

单元测试:会变化的定义

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

有一种东西,

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

没错!它是单元。

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

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

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

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

pYYBAGN2zgKAK5l1AABHhnJ6tUY430.png

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

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

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

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

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

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

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

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

    关注

    30

    文章

    4556

    浏览量

    66784
收藏 人收藏

    评论

    相关推荐

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

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

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

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

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

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

    软件单元测试真的有必要吗?(下)

    本篇将深入讨论单元测试过程中,如何在保质保量完成测试任务的同时,缩减时间成本、提高测试效率,并分享目前行业内的实践经验以及相关自动化测试工具。
    的头像 发表于 11-17 15:18 299次阅读
    软件<b class='flag-5'>单元测试</b>真的有必要吗?(下)

    一种通用的汽车车身电子单元测试工装的研究设计

    电子发烧友网站提供《一种通用的汽车车身电子单元测试工装的研究设计.pdf》资料免费下载
    发表于 11-07 10:07 0次下载
    一种通用的汽车车身电子<b class='flag-5'>单元测试</b>工装的研究设计

    软件单元测试真的有必要吗?(上)

    本文着重探讨单元测试的重要性及其正面临的困境,并介绍功能安全标准中罗列的单元测试方法。
    的头像 发表于 11-03 14:58 315次阅读
    软件<b class='flag-5'>单元测试</b>真的有必要吗?(上)

    如何提高嵌入式软件单元测试效率

    在本指南中,您将学习如何通过在更短的时间内运行更多的测试来增加您的单元测试吞吐量。 这种效率的提高来自于使用虚拟平台而不是物理硬件作为开发平台。 本指南对任何开发或运行嵌入式软件单元测试的人都很
    发表于 08-28 06:31

    如何利用Simulink Test工具箱对模型进行单元测试

    创建完模型后,我们需要验证模型的行为,即仿真结果,是否跟我们预期的一致,这样才能保证由模型生成的代码在嵌入式系统中执行得到结果跟我们预期的一致。单元测试主要是以模型或者模型内的子系统为单位进行测试
    的头像 发表于 07-22 10:25 2639次阅读
    如何利用Simulink Test工具箱对模型进行<b class='flag-5'>单元测试</b>?

    083. 单元测试和案例:15.6 fixture

    单元测试
    充八万
    发布于 :2023年07月11日 21:31:03

    081. 单元测试和案例:15.4 断言 #硬声创作季

    单元测试
    充八万
    发布于 :2023年07月11日 21:29:53

    080. 单元测试和案例:15.3 unite discover #硬声创作季

    单元测试
    充八万
    发布于 :2023年07月11日 21:28:44

    079. 单元测试和案例:15.2 unittest suite #硬声创作季

    单元测试
    充八万
    发布于 :2023年07月11日 21:27:34

    078. 单元测试和案例:15.1 unite testcase #硬声创作季

    单元测试
    充八万
    发布于 :2023年07月11日 21:26:24

    嵌入软件单元测试/集成测试自动化工具

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

    嵌入式代码单元测试如何完成?

    软件开发中,每次需求的变更基本都需要改写代码,而代码变更后就需要进行功能测试,当然在功能测试之前需要代码的单元测试,避免代码改动后部分场景没有验证,最后出现各种问题。
    发表于 06-05 12:28 585次阅读