网站大量收购独家精品文档,联系QQ:2885784924

嵌入式测试基础培训精要.docx

  1. 1、本文档共11页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
嵌入式测试基础培训精要

嵌入式测试基础 一、静态测试 1.定义: 静态方法是指不运行被测程序本身,仅通过分析或检查源程序的语法、结构、过程、接口等来检查程序的正确性。对需求规格说明书、软件设计说明书、源程序做结构分析、流程图分析、符号执行来找错。因为静态测试方法并不真正运行被测程序,只进行特性分析。所以,静态方法常常称为“分析”,静态测试是对被测程序进行特性分析方法的总称。 2.适用对象:计算机软件单元、计算机软件部件、计算机软件配置项的源代码。 3.静态分析的主要内容: 静态分析主要包括代码检查、静态结构分析、软件质量度量、错误分析等。 (1)静态结构分析: 静态结构分析是以图形的方式来表达程序的内部结构,例如函数调用关系图、函数内部控制流图。 a.函数调用关系图:以直观的图形方式描述一个应用程序中各个函数的调用和被调用关系; b.函数内部控制流图:显示一个函数的逻辑结构,由许多节点组成,一个节点代表一条语句或数条语句,连接结点的叫边,边表示节点间的控制流向。 (2)软件质量度量: 《GB/T 16260-2006 软件工程 产品质量》是目前国内软件质量的国家强制质量标准,它依据ISO/IEC 9126,以McCall质量模型为基础,从外部质量、内部质量和使用质量3个层面全面刻画了软件质量。在GB/T 16260-2006的外部质量和内部质量模型中,提出了功能性、可靠性、效率、可移植性、易用性和可维护性6个质量特性及27个子特性;在使用质量模型中,提出了有效性、安全性、生产率和满意度4个质量特性。 针对软件的可维护性,目前业界主要存在三种度量参数:Line复杂度、Halstead复杂度和McCabe复杂度。 a.Line复杂度以代码的行数作为计算的基准。 b.Halstead复杂度以程序中使用到的运算符与运算元数量作为计数目标,然后可以据以计算出程序容量、工作量等。 c.McCabe复杂度 一般称为圈复杂度,它将软件的流程图转化为有向图,然后以图论来衡量软件的质量。(*圈复杂圈越大,程序复杂性越大,可靠性就越差。) 在程序控制流程图中,节点是程序中代码的最小单元,边代表节点间的程序流。一个有e条边和n个节点的流程图G,由边和节点限定的范围称为区域,计算区域时应包括图外部的范围。其圈复杂度为 V(G)=e-n+2或V(G)=区域数=判定数+1 模块的大小为V(G)≤10是适当的,即,V(G)≤10是一种更科学模块规模的精确的上限。McCabe建议,对于复杂度超过10的程序,应分成几个小程序,以减少程序中的错误 。 实例:某程序的控制流程图如下,计算出其圈复杂度。 如上,将程序流程图转化为控制流图,其圈复杂度为: V(G)=区域数=4 或 V(G)=e-n+2=12-10+2=4 或V(G)=判定数+1=3+1=4 (3)错误分析: A.类型和单位分析:发现数据类型上的错误和单位上的不一致性。 B.引用分析:发现引用异常。例如变量在赋值以前被引用或者赋值以后未被引用等等。 C.表达式分析:对表达式进行分析,从而发现并纠正表达式中的错误。例如除数为0,、对负数开平方等等。 D.接口分析:检查子程序及各个函数接口的一致性,包括检查形参与实参类型、个数、维数、顺序的一致性。检查全局变量及公共数据区在使用上的一致性。例如数组越界、不可达代码、内存泄漏等问题。 二、动态测试(白盒测试和黑盒测试) 1.DO-178B标准: 在嵌入式软件开发与测试的众多标准中,民用航空的标准体系最具有代表性。航空软件,例如飞行控制软件,对可靠性和安全性要求是非常高的。因此对于这些在开发上和验证上有严格的流程及要求。那些通用开发/测试的方法和技术,在这个领域里都可以被全面地应用到。所以,对于像这样的软件,现今采用的比较流行的标准是DO-178B Level A标准。 DO-178B是一个为了确定性制定的标准,具有稳定性和接受范围内的保密性,从而使航空系统和设备的软件部分符合FAA和JAA的航空工作要求。DO-178B标准的真正意义是它规定了每一行代码都需要保证需求和测试程序的可追踪性,并在设计的过程中排除其他无用的代码。 2.定义:动态测试方法是指通过运行被测程序,检查运行结果与预期结果的差异,并分析运行效率、正确性和健壮性等性能。这种方法由三部分组成:构造测试用例、执行程序、分析程序的输出结果。 3.白盒测试:又称结构测试、透明盒测试、逻辑驱动测试或基于代码的测试。主要是考察程序的结构和逻辑,验证所构造的程序是否符合要求。主要的测试方法有代码检查法、静态结构分析法、逻辑覆盖测试、基本路径测试、数据流测试、域测试、符号测试等等。 (1)逻辑覆盖测试:主要包括语句覆盖、条件覆盖、判定覆盖、判定覆盖、判定

文档评论(0)

shuwkb + 关注
实名认证
内容提供者

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

1亿VIP精品文档

相关文档