汽车软件单元测试、集成测试、系统测试的区别详解

谈思汽车 2024-06-05 11:51

 智能汽车安全新媒体 

基于目前的汽车电气架构主要是分布式的电器架构,汽车的功能分解到了各个相应的功能模块,因此嵌入式汽车软件的复杂度,相比于IT软件,并没有那么大,但质量要求相对非常高。为了解决软件开发过程中的各种问题,先后引入了瀑布模型、V模型、敏捷等。

这里以V模型引入汽车嵌入式软件开发中的单元测试、集成测试和系统测试。

01

单元测试

黑盒测试

黑盒测试是软件测试中的一种测试方法,它是指在不了解系统内部结构或工作原理的情况下,通过输入数据并观察输出结果来判断系统的正确性、完整性和可靠性的测试方法。

黑盒测试的重点在于测试对象的功能和性能是否符合需求规格说明书的要求。黑盒测试适用于所有软件类型,无论是桌面应用程序、服务器端软件还是嵌入式控制系统等。

黑盒测试分为等价类划分、边界值分析、决策表测试、场景测试等多种方式。

①等价类划分

等价类划分是最为常用的一种测试方法之一,它将所有可能的输入数据划分成若干个等价类,每个等价类的数据被认为具有相同的影响,从而提高测试效率和测试覆盖率。

例如一个温度采集复杂驱动,不同电压的输入表示不同温度,我们需要在传感器允许范围内输入对应的电压值来观察是否输出了对应的温度。

②边界值分析

通过测试极限数据来检测软件中可能存在的错误。

例如一个温度采集复杂驱动,温敏传感器测量温度范围为-40℃——150℃,对应电压为0.2V——4.5V,我们可以在边界处出入0.19V或者4.6V的情况。

③决策表测试

适用于复杂的业务逻辑的测试。决策表是一种规范化的表格,通过列出所有可能的输入组合和输出结果来描述一个系统的决策逻辑。通过决策表测试,可以发现许多在其他测试方法中难以发现的问题。

④场景测试

场景测试是一种基于用户使用场景的测试方法,它可以发现软件在不同场景下的异常行为和错误。例如LCC(车道保持辅助)功能在不同路况下的运行情况。

白盒测试

①白盒测试简介

白盒测试是一种在知道程序内部结构的情况下采用的测试技术或策略,选取足够的测试用例,对源代码实现比较充分的覆盖,以便尽可能多地发现程序中的错误.它包括逻辑覆盖、路径测试、控制流测试和数据流测试等方法。

在ISO/IEC/IEEE 29119系列软件测试标准中,第四部分基于结构的测试技术用于白盒测试中,我们将着重关注右图中红色方框选中的部分

白盒测试相较于软件单元测试是一种更为详细的测试方法,测试人员需要了解被测试软件的内部结构和逻辑。它测试软件中的程序代码的每一条路径是否能按预期执行,以检测程序中可能存在的逻辑错误和漏洞,提高软件的质量和安全性。

②白盒测试优点

白盒测试可测试出隐藏的错误,优化代码;

白盒测试的测试用例可实现自动化;

白盒测试比其他测试方法更全面,因为它能测试代码的所有路径。

③语句覆盖

若要使语句覆盖度达到100%,则要求设计足够多的测试用例,使得程序中每条语句至少被执行一次。语句覆盖的测试用例是依据源代码中显性的存在的语句进行编写的,所以无法测试出隐藏的分支或条件,如悬空的else;再如,在Do-While结构中,语句覆盖执行其中某一个条件分支。

显然,语句覆盖对于多分支的逻辑运算是无法全面反映的,它只关注语句是否执行一次,而不考虑其他情况。但是,通过语句覆盖,可以找到程序中的Dead Code,即未执行的代码(如函数中return后面的语句);未执行的分支 (如分支判断条件总是为true或false)。

④分支覆盖

语句覆盖测试程序中每条语句至少执行一次的情况,但是它无法检测程序中隐藏的分支或循环运算。分支/决策覆盖是白盒测试中测试执行路径覆盖度大于语句覆盖的方法,它们可用来:

  • 验证代码中的所有分支;

  • 检测由于隐藏分支导致程序操作异常;

  • 消除语句测试无法覆盖的问题。

但是,如右图所示,条件A、B和C构造一个了布尔表达式,分支覆盖和决策覆盖只关心决策的路径,会忽略决策条件中布尔表达式内部的分支。

⑤数据流测试

数据流测试源代码中定义的变量是否被使用。其中,变量的定义表示为为变量指定了类型和名字,如“char variable;”,变量的使用表示为变量参与了判断(Predicate-use,简称 p-use),如“if (variable > 10)”,或计算(Computation-use,简称 c-use),如“variable=3;”。数据流测试的测试条件为变量的定义-使用对(Definition-use pair), 即变量定义的位置到使用的位置,通常,这里的位置表示行号。

数据流测试的测试覆盖项分为两类,一是用于计算的变量,一个变量只需要一个测试覆盖项,实现其中一个定义-使用对应即可;二是用于判断的变量,一个变量需要的测试覆盖项等同于定义-使用对数量,一个测试覆盖项实现变量的一个定义-使用对应。

02

集成测试

灰盒测试

灰盒测试是界于黑盒测试和白盒测试之间的一种测试。之所以存在灰盒测试,是因为按测试阶段来划分,整个测试的流程包括单元测试、集成测试、系统测试,而白盒测试对应单元测试,黑盒测试对应系统测试。

在正确的测试过程中,应该是先测试单元模块,单元模块测试完成之后,并没有立即进入系统测试,而是集成测试,这个时候其使用的方法就是灰盒测试,即我们测试完成单个模块后,虽然单个模块没有问题,但并不代表这些模块组合在一块时就一定没有问题。

要验证这些功能模块组合在一起有没有问题,就是我们说的集成测试,其使用方法就是灰盒测试。

集成测试内容

集成测试是在单元测试之后进行的,以确保所有单元相互协调运行。通常,一个单元将被视为具有独立功能,但在与其他单元交互时可能会引起问题。这就是软件测试如此重要的原因,尤其是作为一个整体的测试单元。

集成测试主要验证是否满足软件架构和需求,大多数情况下采用灰盒测试。例如各个单元之间的数据接口测试,软件性能测试(cpuload,cycletime,runtime等)

03

系统测试

系统测试通常在集成测试之后,将所有模块集成到完整的硬件系统上,验证是否满足系统架构需求。通常采用黑盒测试。系统测试需要在尽可能遍历所有工况,考虑尽可能多的、极限的运行环境。

在实践中,具体的测试责任分配可能因组织和项目而异。然而,一般情况下,可能有以下分配:

单元测试通常由开发人员自己完成,开发人员编写测试用例,并在开发过程中使用自动化测试工具或框架来执行这些测试;集成测试通常由测试团队或质量保证团队完成,测试团队负责编写集成测试用例,测试组件之间的接口和协作。开发人员可能参与修复集成测试中发现的问题。

系统测试通常由专门的测试团队或质量保证团队负责。他们负责编写系统测试用例,并测试整个系统的功能、性能、可靠性和用户体验。用户代表或业务部门可能参与系统测试,以验证系统是否满足用户需求。

这些测试阶段之间的责任分配并不是绝对的,可能会根据组织的规模、项目的复杂性和团队的组织结构而有所不同。在某些情况下,开发人员可能会参与集成测试和系统测试,而测试团队可能会参与单元测试。关键是确保每个测试阶段都得到适当的关注和执行,以确保产品的质量和稳定性。

04

静态测试

静态代码测试是一种分析源代码的过程,用于查找潜在的编码错误、代码缺陷和安全漏洞。静态代码测试并不直接运行程序,而是检查代码的结构、语法、命名规范、代码复杂度等方面的问题。静态代码检测可以在软件开发早去提供安全问题反馈,帮助开发人员在编译和运行代码之前发现潜在的问题。

05

测试工具

Tessy

用于单元测试和集成测试。Tessy是一个针对嵌入式软件的C/C++代码进行单元、集成测试的工具,它可以自动化地执行测试、评估测试结果并生成测试报告。Tessy的目标就是:通过自动化整个测试周期,完美支持针对C语言的单元测试/集成测试,同时,Tessy也同样关注测试组织和测试管理。

Gtest

用于单元测试和集成测试。

Gtest是Google的一个开源框架,它主要用于写单元测试,检查真自己的程序是否符合预期行为。可在多个平台上使用(包括Linux, Mac OS X, Windows, Cygwin和Symbian)。它提供了丰富的断言、致命和非致命失败判断,能进行值参数化测试、类型参数化测试、“死亡测试”。

VectorCAST

VectorCAST是领先的专门用于高可靠性和高安全性软件的自动化动态测试工具链,覆盖软件的单元测试、模块测试、集成测试、系统功能测试、回归测试和覆盖率分析等软件全生命周期SDLC的主要测试环节。VectorCAST支持对C, C++和Ada语言的测试,尤其适用于对嵌入式软件应用的测试。

QAC

用于静态代码测试。Helix QAC是权威的C/C++代码合规性静态分析工具,适用于对代码的规范性和可靠性有较高要求的软件系统。Helix QAC提供编码规则检查、数据流分析和代码度量分析等全面的代码静态分析功能,可以自动检测软件中不规范的、不安全的、不明确的、不可移植的有关编码风格、命名惯例、程序逻辑、语法和结构的代码。

Helix QAC现已广泛支持MISRA C/C++, AutoSAR C++14, CERT C/C++, CWE C/C++, HiCPP, JSF等常用编码规则集,并完全符合ISO 26262, ISO/SAE 21434, ASPICE, EN 50128, IEC 61508, IEC 60880, IEC 62304, DO-178B/C等研发标准对工具鉴定和认证的要求。

Polyspace

用于静态代码测试。Polyspace :软件运行时错误检测工具。

用途:

①解决代码鲁棒性问题,提高软件安全性,可靠性,排查编码错误
②检查编码规则一致(MISRA/JSF)。
③静态度量(代码量,调用次数等)
④测试覆盖度
⑤软件质量水平

内容来源:

https://blog.csdn.net/weixin_42447823/article/details/133912247

-  THE END  -



 专业社群 


精品活动推荐

因文章部分文字及图片涉及到引用,如有侵权,请及时联系17316577586,我们将删除内容以保证您的权益。

谈思汽车 智能汽车安全新媒体
评论 (0)
  • 文/Leon编辑/cc孙聪颖‍转手绢、跳舞、骑车、后空翻,就在宇树、智元等独角兽企业率领“机器人大军”入侵短视频时,却有资本和科技大佬向此产业泼了一盆冷水。金沙江创投管理合伙人朱啸虎近日突然对人形机器人发难,他表示“最近几个月正在批量退出人形机器人公司”。“只是买回去做研究的,或者买回去做展示的,这种都不是我们意义上的商业化,谁会花十几万买一个机器人去干这些活?”朱啸虎吐槽。不过,朱啸虎的观点很快就遭到驳斥,众擎机器人的创始人、董事长赵同阳回怼道:“(朱啸虎)甚至问出了人形机器人在这个阶段有什么
    华尔街科技眼 2025-04-07 19:24 65浏览
  • 贞光科技作为三星电机车规电容代理商,针对电动汽车领域日益复杂的电容选型难题,提供全方位一站式解决方案。面对高温稳定性、高可靠性、高纹波电流和小型化等严苛要求,三星车规电容凭借完整产品矩阵和卓越技术优势,完美满足BMS、电机控制器和OBC等核心系统需求。无论技术选型、供应链保障、样品测试还是成本优化,贞光科技助力客户在电动汽车产业高速发展中占据技术先机。在电动汽车技术高速发展的今天,作为汽车电子系统中不可或缺的关键元器件,电容的选型已成为困扰许多工程师和采购人员的难题。如何在众多参数和型号中找到最
    贞光科技 2025-04-07 17:06 36浏览
  •     根据 IEC术语,瞬态过电压是指持续时间几个毫秒及以下的过高电压,通常是以高阻尼(快速衰减)形式出现,波形可以是振荡的,也可以是非振荡的。    瞬态过电压的成因和机理,IEC 60664-1给出了以下四种:    1. 自然放电,最典型的例子是雷击,感应到电力线路上,并通过电网配电系统传输,抵达用户端;        2. 电网中非特定感性负载通断。例如热处理工厂、机加工工厂对
    电子知识打边炉 2025-04-07 22:59 44浏览
  • 曾几何时,汽车之家可是汽车资讯平台领域响当当的“扛把子”。2005 年成立之初,它就像一位贴心的汽车小助手,一下子就抓住了大家的心。它不仅吸引了海量用户,更是成为汽车厂商和经销商眼中的“香饽饽”,广告投放、合作推广不断,营收和利润一路高歌猛进,2013年成功在纽交所上市,风光无限。2021年更是在香港二次上市,达到了发展的巅峰,当年3月15日上市首日,港股股价一度高达184.6港元,市值可观。然而,如今的汽车之家却陷入了困境,业务下滑明显。业务增长瓶颈从近年来汽车之家公布的财报数据来看,情况不容
    用户1742991715177 2025-04-07 21:48 53浏览
  • 在人工智能技术飞速发展的今天,语音交互正以颠覆性的方式重塑我们的生活体验。WTK6900系列语音识别芯片凭借其离线高性能、抗噪远场识别、毫秒级响应的核心优势,为智能家居领域注入全新活力。以智能风扇为起点,我们开启一场“解放双手”的科技革命,让每一缕凉风都随“声”而至。一、核心技术:精准识别,无惧环境挑战自适应降噪,听懂你的每一句话WTK6900系列芯片搭载前沿信号处理技术,通过自适应降噪算法,可智能过滤环境噪声干扰。无论是家中电视声、户外虫鸣声,还是厨房烹饪的嘈杂声,芯片均能精准提取有效指令,识
    广州唯创电子 2025-04-08 08:40 73浏览
  • 及时生产 JIT(Just In Time)的起源JIT 起源于 20 世纪 70 年代爆发的全球石油危机和由此引发的自然资源短缺,这对仰赖进口原物料发展经济的日本冲击最大。当时日本的生产企业为了增强竞争力、提高产品利润,在原物料成本难以降低的情况下,只能从生产和流通过程中寻找利润源,降低库存、库存和运输等方面的生产性费用。根据这种思想,日本丰田汽车公司创立的一种具有特色的现代化生产方式,即 JIT,并由此取得了意想不到的成果。由于它不断地用于汽车生产,随后被越来越多的许多行业和企业所采用,为日
    优思学院 2025-04-07 11:56 89浏览
  • 引言:POPO声的成因与影响在语音芯片应用中,WT588F08A作为一款支持DAC+功放输出的高集成方案,常因电路设计或信号处理不当,在音频播放结束后出现POPO声(瞬态噪声)。这种噪声不仅影响用户体验,还可能暴露电路设计缺陷。本文将基于实际案例,解析POPO声的成因并提供系统化的解决方案。一、POPO声的根源分析1. 功放电路状态切换的瞬态冲击当DAC输出的音频信号突然停止时,功放芯片的输入端若处于高阻态或无信号状态,其内部放大电路会因电源电压突变产生瞬态电流,通过喇叭表现为POPO声。关键因
    广州唯创电子 2025-04-07 09:01 92浏览
  • 医疗影像设备(如CT、MRI、超声诊断仪等)对PCB的精度、可靠性和信号完整性要求极高。这类设备需要处理微伏级信号、高频数据传输,同时需通过严格的EMC/EMI测试。制造此类PCB需从材料选择、层叠设计、工艺控制等多维度优化。以下是关键技术与经验分享。 1. 材料选择:高频与生物兼容性优先医疗影像设备PCB常采用 Rogers RO4000系列 或 Isola FR4高速材料,以降低介电损耗并保证信号稳定性。例如,捷多邦在客户案例中曾为某超声探头厂商推荐 Rogers RO4350B
    捷多邦 2025-04-07 10:22 90浏览
  • 在追求环境质量升级与产业效能突破的当下,温湿度控制正成为横跨多个行业领域的核心命题。作为环境参数中的关键指标,温湿度的精准调控不仅承载着人们对舒适人居环境的期待,更深度关联着工业生产、科研实验及仓储物流等场景的运营效率与安全标准。从应用场景上看,智能家居领域要求温湿度系统实现与人体节律的协同调节,半导体洁净车间要求控制温湿度范围及其波动以保障良品率,而现代化仓储物流体系则依赖温湿度的实时监测预防各种产品的腐损与锈化。温湿度传感器作为实现温湿度监测的关键元器件,其重要性正在各行各业中凸显而出。温湿
    华普微HOPERF 2025-04-07 10:05 87浏览
  • 在万物互联时代,智能化安防需求持续升级,传统报警系统已难以满足实时性、可靠性与安全性并重的要求。WT2003H-16S低功耗语音芯片方案,以4G实时音频传输、超低功耗设计、端云加密交互为核心,重新定义智能报警设备的性能边界,为家庭、工业、公共安防等领域提供高效、稳定的安全守护。一、技术内核:五大核心突破,构建全场景安防基座1. 双模音频传输,灵活应对复杂场景实时音频流传输:内置高灵敏度MIC,支持环境音实时采集,通过4G模块直接上传至云端服务器,响应速度低至毫秒级,适用于火灾警报、紧急呼救等需即
    广州唯创电子 2025-04-08 08:59 68浏览
  • 引言:小型化趋势下的语音芯片需求随着消费电子、物联网及便携式设备的快速发展,产品设计对芯片的小型化、高集成度和低功耗提出了更高要求。厂家凭借其创新的QFN封装技术,推出WTV系列(如WTV380)及WT2003H系列语音芯片,以超小体积、高性能和成本优势,为紧凑型设备提供理想解决方案。产品核心亮点1. QFN封装技术赋能超小体积极致尺寸:WTV380采用QFN32封装,尺寸仅4×4毫米,WT2003H系列同样基于QFN工艺,可满足智能穿戴、微型传感器等对空间严苛的场景需求。高密度集成:QFN封装
    广州唯创电子 2025-04-07 08:47 83浏览
  • 在科技浪潮奔涌的当下,云计算领域的竞争可谓是如火如荼。百度智能云作为其中的重要参与者,近年来成绩斐然。2024年,百度智能云在第四季度营收同比增长26%,这样的增速在行业内十分惹眼。回顾全年,智能云业务的强劲增长势头也十分明显,2024年第一季度,其收入达到47亿元,同比增长12%;第二季度营收51亿元,同比增长14%。从数据来看,百度智能云在营收方面一路高歌猛进,展现出强大的发展潜力。然而,市场对百度智能云的表现似乎并不完全买账。2024年,尽管百度智能云数据亮眼,但百度股价却在震荡中下行。在
    用户1742991715177 2025-04-06 20:25 68浏览
  •   工业自动化领域电磁兼容与接地系统深度剖析   一、电磁兼容(EMC)基础认知   定义及关键意义   电磁兼容性(EMC),指的是设备或者系统在既定的电磁环境里,不但能按预期功能正常运转,而且不会对周边其他设备或系统造成难以承受的电磁干扰。在工业自动化不断发展的当下,大功率电机、变频器等设备被大量应用,现场总线、工业网络等技术也日益普及,致使工业自动化系统所处的电磁环境变得愈发复杂,电磁兼容(EMC)问题也越发严峻。   ​电磁兼容三大核心要素   屏蔽:屏蔽旨在切断电磁波的传播路
    北京华盛恒辉软件开发 2025-04-07 22:55 67浏览
  •     在研究Corona现象时发现:临界电压与介电材料表面的清洁程度有关。表面越清洁的介电材料,临界电压越高;表面污染物越多的地方,越容易“爬电”。关于Corona现象,另见基础理论第007篇。    这里说的“污染物”,定义为——可能影响介电强度或表面电阻率的固体、液体或气体(电离气体)的任何情况。    IEC 60664-1 (对应GB/T 16935.1-2023) 定义了 Pollution Degree,中文术语是“污染等
    电子知识打边炉 2025-04-07 22:06 42浏览
  • 在全球电子产业面临供应链波动、技术迭代和市场需求变化等多重挑战的背景下,安博电子始终秉持“让合作伙伴赢得更多一点”的核心理念,致力于打造稳健、高效、可持续的全球供应链体系。依托覆盖供应商管理、品质检测、智能交付的全链路品控体系,安博电子不仅能确保电子元器件的高可靠性与一致性,更以高透明的供应链管理模式,助力客户降低风险、提升运营效率,推动行业标准升级,与全球合作伙伴共同塑造更具前瞻性的产业生态。动态优选机制:构建纯净供应链生态安博电子将供应商管理视为供应链安全的根基。打造动态优选管控体系,以严格
    电子资讯报 2025-04-07 17:06 46浏览
我要评论
0
2
点击右上角,分享到朋友圈 我知道啦
请使用浏览器分享功能 我知道啦