第9章嵌入式测试分解.pptVIP

  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) 软件指令仿真   软件指令仿真的主要工作是对相关的I/O操作进行替换。在80X86系列CPU指令集中,I/O指令有两个IN和OUT,对这两个指令,我们都定义相应的宏来代替其操作,同时在内存中组织变量来代替I/O操作中的寄存器变量。   在软件中,I/O指令主要有以下几类:   IN REGISTER, BYTE   IN REGISTER, WORD   OUT BYTE, REGISTER   OUT REGISTER, WORD outw macro reg, port  mov di, counto  mov word ptr outbuf[di], ax  Inc di  mov counto, di  endm 2) 软件插桩   为了便于测试完成后分析软件的执行路径,必须在软件中加入特定的输出语句。这样,我们才能在分析软件的输出数据时进行对比,得到软件的实际运行情况。 可在遥控摄像头的控制及通信软件中加入下列语句:   MOV DADIAN, PATH[NO]   将软件中的上述插入点写入软件的输出结果中,测试结束后分析语句时,就可以根据路径编号来分析软件的执行路径。 3) 软件移植   由于遥控摄像头的控制及通信软件在实际环境中的执行方式是直接操作底层硬件,而DOS系统中的软件是和操作系统交互的,因此,为了完成测试,必须对软件进行移植,使软件能够在DOS系统中运行。    * * * * * * * * * * 9.1 嵌入式软件测试的方法 9.2 嵌入式软件测试的过程 9.3 嵌入式软件测试的特点 9.4 嵌入式软件测试的工具 9.5 嵌入式软件测试策略 9.6 嵌入式软件测试实例   嵌入式软件测试分为4个阶段,即模块测试、集成测试、系统测试、硬件/软件集成测试。前3个阶段适用于任何软件的测试,硬件/软件集成测试阶段是嵌入式软件所特有的,目的是验证嵌入式软件与其所控制的硬件设备能否正确地交互。   在嵌入式软件测试中,常采取折中的方式。基于目标机的测试消耗较多的经费和时间,而基于宿主机的测试代价较小,但毕竟是在模拟环境中进行的。目前的趋势是把更多的测试转移到宿主环境中进行,但是,目标环境的复杂性和独特性不可能完全模拟。   在目标环境和宿主环境中的测试可以出现不同的软件缺陷。 在宿主环境中,可以进行逻辑或界面的测试以及与硬件无关的测试。这一部分的测试所消耗的时间通常相对较少,用调试工具可以更快地完成调试和测试任务。 而与定时问题有关的白盒测试、中断测试、硬件接口测试只能在目标环境中进行。在软件测试周期中,基于目标的测试是在较晚的硬件/软件集成测试阶段开始的。 根据嵌入式系统的开发流程,为了最经济地实现系统的功能,一般采用自顶向下、层层推进的方法对嵌入式系统进行测试。 嵌入式软件测试的总体步骤为: 首先进行操作系统移植并编写系统底层驱动,然后进行系统平台测试,其中包括硬件电路测试、操作系统及底层驱动程序的测试等。 如果此测试通过,可以进入下一步的开发——用模块化的方法编写应用代码,随后再对软件模块进行测试。 如果所有的模块都通过测试,需要进行集成测试。 如果集成测试通过,则需要进行系统测试。 如果系统测试通过,就可以退出测试。 在第一件产品生产出来之后,需要对产品进行测试,如果测试通过,则表示嵌入式产品的所有测试步骤已经完成。 Y N 开始 N N N Y Y Y Y Y 根据需求修改程序代码 只修改应用代码 测试通过? 系统测试 测试通过? 集成测试 编写接口函数,装载到模块数据之间 测试通过? 软件模块测试 用模块化的方法编写应用代码 测试通过? 系统平台测试 移植操作系统,编写系统底层驱动 产品测试 模块接口函数确定错误模块 修改错误模块代码 关联矩阵确定需测试模块 修改错误模块代码 N 测试通过? 结束 嵌入式软件测试作为一种特殊的软件测试,它的目的和原则同普通的软件测试是一样的,都是为了验证或达到可靠性要求而对软件所进行的测试。嵌入式软件测试除了要遵循普通软件测试的原则之外,还需要遵循以下几个原则:   (1) 嵌入式软件测试对软件在硬件平台的测试是必不可少的。   (2) 嵌入式软件测试需要在特定的环境下对软件进行测试。   (3) 嵌入式软件需进行必要的可靠性负载测试。

文档评论(0)

奇缘之旅 + 关注
实名认证
文档贡献者

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

1亿VIP精品文档

相关文档