嵌入式控制系统软件测试与其应用.docVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
嵌入式控制系统软件测试与其应用

嵌入式控制系统的软件测试及其应用   摘 要本文概要论述了嵌入式系统的软件测试的测试步骤、测试目的、测试模式的设计、测试方法,并举例说明了其在汽车电池充电控制系统上的应用 【关键词】嵌入式系统 软件测试 程序模块 1 引言 随着技术的发展,越来越多的功能加入到嵌入式软件中。嵌入式软件在各种不同条件下可能出现未知、不可预测的状况,其潜在的风险往往较高,高可靠性和安全性自然成为嵌入式系统的重要指标 嵌入式系统安全性的失效可能会导致灾难性的后果,即使是非安全性系统,由于大批量生产也会导致严重的经济损失。这就要求对嵌入式系统,包括嵌入式软件进行严格的测试、确认和验证 一般来说,嵌入式软件测试在4个阶段上进行,即模块测试、集成测试、系统测试、硬件/软件集成测试。前3个阶段适用于任何软件的测试,硬件/软件集成测试阶段是嵌入式软件所特有的,目的是验证嵌入式软件与其所控制的硬件设备能否正确地交互 2 模块测试 2.1 模块测试的定义和特点 (1)模块测试又称单元测试,是针对程序模块(软件设计最小单位)来进行正确性检验的测试工作 (2)模块测试的目的是检测程序模块对《详细设计说明书》的符合程度 (3)模块测试由测试工程师编制测试用例进行测试,并将结果记录在《软件测试报告》上 2.2 模块测试的设计 测试模型:分为驱动模块和桩模块 驱动模块相当于所测试模块的主程序,桩模块是用来代替所测试模块调用的子模块 2.3 输入和输出的规则 2.3.1 输入 一般来说有以下四种情况: (1)被测函数的参数; (2)通过赋值运算符“=”向局部变量赋值或作为被调用函数的参数的全局变量(包括静态变量); (3)有返回值的被调函数; (4)全局变量作为被调用函数的参数 2.3.2 输出 一般有三种情况: (1)被测函数的返回值; (2)被改变过的全局变量(包括静态变量); (3)所有的被调函数 2.4 三值确认 做大小比较的检证时,通过选取基准点,和基准点-1,基准点+1共三点来保证大小比较的正确。例如: if(a10)大小比较需三值确认,10为境界值,所以取11,10,9三值 {a=11时,结果b=OFF; a=10时,结果b=ON; a=9时,结果b=ON b=OFF;为何取三值? }a ? 10 Else三值确认后能判定是什么符号 b=ON; 2.5 if语句的组合规则 在if语句中,每个判定条件的成立和不成立的情况,都要测试到: 例如:If(A) 则有:A=T时,结果=T; A=F时,结果=F 若有两个或多个判定条件组合起来的判定语句,例如: (1)A B A=T B=T时,结果=T; A=T B=F时,结果=F; A=F B=T时,结果=F; A=F B=F时,结果=F (2)C‖D C=T D=F时,结果=T; C=F D=T时,结果=T; C=F D=F时,结果=F; C=T D=T时,结果=T (3)A B‖C A=T B=T时,AB结果=T,C=F时,最终结果=T; A=T B=F时,AB结果=F,C=F时,最终结果=F; A=F B=T时,AB结果=F,C=F时,最终结果=F; A=T B=F时,AB结果=F,C=T时,最终结果=T 2.6 模块测试方法 2.6.1 代入 (1)确认对象: ①被测试函数的参数,参数做代入 ②全局变量通过赋值运算符“=”向局部变量赋值,形如“local_var=global_var;”,全局变量做代入 ③被测试函数的代码中有调用其他函数,且被调用函数返回类型不为空(另一说法是没有返回值),被调用函数做代入 ④全局变量做为被调用函数的参数使用,全局变量做代入 (2)确认方法:确认对象动态取值范围的最大值和最小值 2.6.2 大小比较 (1)确认对象:逻辑表达式中的变量和常量 (2)确认方法:三值确认(表达式中任意一侧即可,变量侧优先) 2.6.3 加减运算 (1)确认对象:加减算式(包括库函数)中的变量和常量 (2)确认方法:确认对象动态取值范围的最大值,最小值,一般值(不为0,取值唯一;运算结果不为0且尽量为负) 加减演算指所有只含有加减运算符和赋值运算符“=”的语句及调用具有加减演算功能的库函数的语句,加减运算符共有六种,加运算符“+”,减运算符“-”,自加运算符“++”,自减运算符“--”,以及赋值运算符“+=”,“-=” 2.6.4 乘除运算

文档评论(0)

linsspace + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档