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

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

3天内不再提示

ASPICE系列:如何定义软件单元验证策略

北汇信息POLELINK 2022-11-30 08:42 次阅读

软件验证策略是软件单元验证过程中所有活动的基础,因此也是评估的基础。软件验证策略是基础实践1所要求的:开发包括回归策略在内的软件单元验证策略。

本文是ASPICE系列文章的第2部分。查看第1部分:ASPICE系列:顺利通过ASPICE流程软件单元验证(SWE.4)

对于评估人员来说,单元验证策略必须至少包括以下10个方面:

1. 所有单元的定义。定义可以是通用的,也可以是特定的。确保单元是唯一可识别的。在最简单的情况下,可以把一列函数或文件分类为单元。

  • 您应该能够回答以下问题:如何确保所有单元都包含在函数列表中?这可以通过比如定期检查列表或自动更新列表等方式来实现。

2. 定义如何涵盖与验证和测试相关的特定需求。这包含功能需求、非功能需求和过程需求。

  • 您应该对整个项目的需求有一个概览。补充对单元验证有影响的信息。这些通常也是来自ASPICE、ISO26262或其他安全标准、横断面荷载手册、法律、利益相关方、MISRA等的要求。如果您明确地在验证策略中包含各个需求,并简要地记录您的解决方案以供实现,这将是很有帮助的。

3.定义测试用例的开发方法和来自详细设计和非功能需求的测试数据。

  • 这需要你解释为此使用的方法,例如为所有接口形成等价类,正面和负面测试等等。

  • 如果您有通用的单元定义,您可能也会为此使用通用的定义。如果你对质量管理和功能安全单元有约束或变量(constraints/variants),那么就会期望它们也能显示质量管理和功能安全单元的概述。这一期望同样适用于所有其他变体。因此,通用的单元定义会增加测试工作量。

  • 为了处理这方面的问题,我们建议预先分析所有的需求,并在此分析的基础上推导出最合适的方法。

4. 定义用于静态验证和评审的方法和工具的方法。

5. 定义每个测试环境和使用的每个测试方法论。

  • 现成的工具实现方法。参考现有的工具供应商文档以节省时间。

  • 使用掌握尽可能多的方法和技术的工具。节省培训和许可证的项目成本。有了一些可以广泛使用的工具,员工可以更快地重新确定优先级,不再需要熟悉工具。

  • 使用已有的方法,例如等价类或限制测试来收集测试数据。

  • 使用能最大限度地减轻重复活动工作量的工具,例如自动生成报告和可追溯性。

  • 尽可能实现自动化

6. 根据项目和发布阶段定义测试覆盖范围。

  • 没有人期望你在第一天就达到100%的覆盖率。利用项目的持续时间,并显示可实现的建设曲线。

  • 从人员或其他资源方面得出你为此需要什么。

  • 回顾你的策略,如果有偏差就进行调整。根据流程进行变更(SUP.10变更请求管理)。

7.定义动态单元测试的测试启动条件和测试结束标准。

  • 哪些条件导致哪些活动的开始。

  • 有相关序列吗?

  • 什么时候终止,什么时候重新开始?他们是怎么得到这个的?

  • 他们什么时候停止测试?最好不要使用时间,而是使用技术或可度量的标准(覆盖度量,如何测试所有需求)。说明为什么这些指标是充分的。

8. 如果测试级别是组合的,那么需要每个测试级别的充分测试覆盖率的文档。

  • 如果您合并测试级别,您必须证明您如何确定覆盖级别。覆盖可以意味着代码覆盖、接口覆盖和需求覆盖。一个一致的基本原理是,例如,您将测试内容移动到更高的级别,因为您可以在这个级别上更有意义地分配测试用例和需求。

  • 他们通常从标准和其他指导方针中获得覆盖率目标。ISO 26262为与安全相关的代码部分的代码覆盖率设定了目标。ISO 26262含蓄地要求高覆盖率,并注明:“无正当理由的没有目标值或低目标值的结构覆盖率被认为是不充分的。”

  • 一般来说,最好是证实所有覆盖率目标值低于100%。这可以通过使用发布计划和预定的需求或特性优先级更容易地完成。

  • 专业建议:从源代码引用或链接相关需求到软件单元验证策略的适当部分。

9. 处理失败的测试用例、失败的静态检查和检查结果的过程。

  • 本程序应与ASPICE问题解决管理策略(SUP.9)过程相关并保持一致。

  • 你应该描述谁被告知,以及如何和何时做什么。

  • 你还应该描述你将在这个过程中分享什么信息/数据。

10. 执行回归测试的定义。

  • 回归测试指的是在对单元进行更改后重新执行静态和动态测试。目标是确定一个单元中未更改的部分是否继续工作。

  • 在自动化测试中,回归测试是一键完成的。

  • 在持续集成/持续测试环境中,表明回归测试是由“每日构建”或其他自动化保证的就足够了。

关于评估的说明

如果您没有覆盖软件单元验证策略中提到的所有10个方面,那么您肯定不会得到BP1“开发软件单元验证策略包括回归策略”的“完全”评估。直到第4点才完成第2点将导致他们在BP1中被评为部分或更糟。

隐含地,评估人员还期望参与过程的所有人员都了解软件单元验证策略的内容。如果他们没有证据,例如邮件、日志或类似的形式,可能会出现测试人员被召集到评估中,并在面试中确定他们的知识的情况。

在ASPICE中,更详细地描述了更高级别的工作产品验证策略(WP ID 19-10)。它规定了验证策略需要安排活动、处理风险和限制、验证的独立程度和其他方面等能力和要求。

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

    关注

    30

    文章

    4555

    浏览量

    66771
收藏 人收藏

    评论

    相关推荐

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

    可测试单元进行测试,来验证其是否按照设计要求正常工作。 嵌入软件单元测试工具能够提高开发人员的工作效率和软件质量。首先,它可以帮助开发人员快
    的头像 发表于 04-23 15:31 83次阅读
    嵌入<b class='flag-5'>软件</b><b class='flag-5'>单元</b>测试工具的作用

    对比ASPICE 3.1,ASPICE 4.0都有哪些变化呢?

    在汽车行业的波澜壮阔中,ASPICE(Automotive Software Process Improvement and Capability dEtermination)标准的讨论犹如一场永无止境的辩论赛。
    的头像 发表于 03-19 14:16 601次阅读
    对比<b class='flag-5'>ASPICE</b> 3.1,<b class='flag-5'>ASPICE</b> 4.0都有哪些变化呢?

    西部数据iNAND AT EU552 UFS 3.1嵌入式闪存驱动器荣获ASPICE CL3认证

    对于汽车生产商而言,确保这类高度软件化系统的质素和稳定性极其关键。汽车软件过程改进及能力评定(ASPICE)作为验证汽车嵌入式软件开发流程的
    的头像 发表于 02-20 16:32 266次阅读

    芯驰科技通过ASPICE CL2评估,提升软件开发流程达到国际水准

    ASPICE(汽车软件过程改进及能力评定)作为汽车产业评定软件团队研发能力的基准框架,被誉为“软件解决方案前装生产市场通行证”。通过本次评估,证明芯驰科技不仅能高效完成研发任务,更有能
    的头像 发表于 02-19 16:32 439次阅读

    新思科技携手AWS加速软件定义汽车的验证

    流媒体视频、声控操作、功能多样化的APP......以前属于智能手机的功能,在软件定义汽车(SDV)时代,也可以同样出现在汽车上。汽车早就已经不单是四个轮子的交通工具了,它更是搭载先进软件的智能机器
    的头像 发表于 01-17 09:15 393次阅读

    基于功能安全的汽车嵌入式软件单元验证技术研究

    ,对满足功能安全ASIL等级的汽车嵌入式软件单元验证技术进行详细介绍,从而提高软件质量,减少软件安全隐患,对汽车嵌入式
    的头像 发表于 01-07 11:27 513次阅读
    基于功能安全的汽车嵌入式<b class='flag-5'>软件</b><b class='flag-5'>单元</b><b class='flag-5'>验证</b>技术研究

    什么是“软件定义汽车”?各大车企的软件定义汽车战略

    要实现软件定义汽车,除了电子/电气架构的升级,用于软硬件分离解耦的集成ECU(电子控制单元)也是必不可少的。另外还提到,为此需要一种称为“虚拟机(hypervisor)”的技术在单个ECU上运行多个虚拟ECU功能。
    发表于 12-22 11:11 291次阅读
    什么是“<b class='flag-5'>软件</b><b class='flag-5'>定义</b>汽车”?各大车企的<b class='flag-5'>软件</b><b class='flag-5'>定义</b>汽车战略

    安全关键软件开发中实现 ASPICE 和 ISO 26262 的协同

    (ASPICE) 和 ISO 26262。ASPICE 用于评估并改进汽车软件的开发流程,而 ISO 26262 则着重解决安全关键型系统的功能安全问题。本文探讨了这两个框架的互补性,并强调了它们的组合在综合提高汽车产品安全和质
    的头像 发表于 11-22 16:37 209次阅读

    软件定义汽车vECU虚拟控制器集成开发与测试

    软件定义汽车”即软件将深度参与到汽车的定义、开发、验证、销售、服务等过程中,并不断改变和优化各个过程,是汽车从基于硬件的产品向
    发表于 11-09 11:49 407次阅读
    <b class='flag-5'>软件</b><b class='flag-5'>定义</b>汽车vECU虚拟控制器集成开发与测试

    如何通过基于模型的设计实现ASPICE合规性?

    及能力评定,简称 ASPICE),是一种基于 ISO/IEC 15504 和 ISO 330xx 系列标准的汽车标准。
    的头像 发表于 10-22 10:46 275次阅读
    如何通过基于模型的设计实现<b class='flag-5'>ASPICE</b>合规性?

    什么是Automotive SPICE(ASPICE)?

    遵守ASPICE有很多好处。一旦您的组织开发出符合ASPICE要求的流程,您就有了一个框架,可以帮助您获得其他标准的认证。例如,尽管存在差异,但以下ASPICE也可以帮助您实现其他安全标准的要求,如ISO 26262。
    的头像 发表于 09-20 20:12 910次阅读
    什么是Automotive SPICE(<b class='flag-5'>ASPICE</b>)?

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

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

    汽车电子如何理解PMBOK和ASPICE

    虽然ASPICE和PMBOK是两个领域的模型,但是随着PMBOK深入到各个行业,PMBOK的应用越来越广泛。在汽车行业,从2007年起,AUTOMOTIVESPICE已作为汽车电子行业软件流程实施评估的首选过程模型。
    发表于 06-26 19:28 350次阅读
    汽车电子如何理解PMBOK和<b class='flag-5'>ASPICE</b>?

    验证和确认的区别和关系

    或过程是否符合指定的规范、标准或要求。验证的目的是确认开发的产品或系统是否满足所定义的规范和设计规则,并在开发过程中进行。验证通常涉及对产品、系统或过程的文件、设计和规范的检查、分析和评估。
    的头像 发表于 06-19 10:59 3450次阅读

    极目智能通过ASPICE-CL2 认证

    4月21日,极目智能 “ADAS高级辅助驾驶系统”开发项目顺利通过ASPICE-CL2(汽车行业软件过程改进和能力评估模型二级)国际认证,这意味着极目智能的智能驾驶产品和解决方案的软件
    的头像 发表于 05-04 17:26 513次阅读
    极目智能通过<b class='flag-5'>ASPICE</b>-CL2 认证