• 单元测试:会变化的定义


    有一种东西,
    如果它太小,需要付出的努力就太大;如果它太大,就很难测试。
    没错!它是单元。
    但是什么才是一个好的单元定义呢?为什么它如此重要?

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

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

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

    在这里插入图片描述

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

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

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

    更精确地定义单元,例如,在编程语言C中,将单元定义为函数级别的数据和指令的封装,或者为单元构造过程提出要求,例如指定最大圈复杂度。

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

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

    喜欢本篇文章的话记得💬评论💖点赞⭐收藏
    ➕更多技术文章直播课程,敬请持续关注北汇信息➕
    ⬇️业务咨询请私信北汇信息或在官网留言⬇️
    📩📩📩
  • 相关阅读:
    一文搞定class的微观结构和指令
    Sqoop学习详细介绍!!
    上位机开发之三菱Q系列PLC通信实践
    代理IP与Socks5代理:网络工程师的神奇魔法棒
    安徽建筑模板厂家供应商实力之选-能强优品木业
    加码企业服务,阿里云发布计算巢加速器
    虚拟化知识学习
    C++<优先队列>详解,一次吃透
    Blender中的高级边缘控制和纹理映射
    〖Python 数据库开发实战 - MySQL篇㉔〗- 数据插入操作 - NSERT语句
  • 原文地址:https://blog.csdn.net/weixin_51954443/article/details/127959376