- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
嵌入式软件插桩技术的研究及插桩器的实现
TheResearchofInstrumentationinEmbedded and
the
Programs
ofanInstrumentationTool
Implement
刘玉东张骏温戴钢
(北京交通大学网络管理研究中心 北京100044)
摘要通信业务实时性强,对可靠性和稳定性要求高;嵌入式通信软件种类多,更新速度快。程序插桩是软件自
动化测试中的一项关键技术,是结构自动化测试的基础。应用于嵌入式软件测试中的程序插桩技术及插桩器实现
可以提高软件测试的自动化程度,进而提高软件的生产率。本文从嵌入式软件的特点出发,分析研究了程序插桩
技术,设计实现了一个C语言程序插桩器,并对插桩器实现过程中的桩函数的设计;插桩点的选择;插桩记录信息
的数据的存放;以及经过插桩的程序运行时如何采集相关桩点信息的输出等关键问题进行重点的研究.
关键词软件测试,嵌入式测试,结构测试,插桩,C语言
软件的结构测试,也叫白盒测试,侧重于软件内
1 引言
部代码的执行路径和逻辑的测试。一般用来分析软
随着我国电子信息产业发展速度的不断加快, 件的内部结构,对软件的逻辑路径进行测试,是在软
通信软件产业,特别是嵌入式通信软件产品需求量 件单元测试过程中常用的方法。结构测试可以检测
越来越大,发展迅速。嵌入式软件具有实时性强,对 程序是否按照详细设计的要求正常运行,提高软件
可靠性和稳定性要求高,与硬件结合紧密的特点,加 开发的效率。结构测试可分为动态的结构测试和静
之嵌入式产品更新速度快,这就需要嵌入式软件的 态的结构测试。静态结构测试是不运行被测程序本
生产不仅要适应嵌入式软件的上述特点,还要适应 身,仅通过分析或检查源程序的文法、结构、过程、接、
嵌入式产品的发展,缩短软件开发周期。这就更需 口等来检查程序的正确性。静态方法通过程序静态
要适合嵌入式软件自身特点的测试方法和技术,保 特性的分析,找出欠缺和可疑之处,例如不匹配的参
证软件质量,提高开发效率。 数、不适当的循环嵌套和分支嵌套、不允许的递归、
我国的软件测试工作开展较晚,软件测试自动 未使用过的变量、空指针的引用和可疑的计算等。
化程度不高。在目前的嵌入式软件开发过程中,手 而动态测试是指通过运行被测程序,检查运行结果
工测试、编写测试用例的现象仍旧普遍存在,导致工 与预期结果的差异,并分析运行效率和健壮性等性
作量大、效率偏低,通常测试也很难完全。再加之, 能[1]。测试覆盖率是用来度量测试完整性的一个手
这种传统的测试方法对于测试人员的经验依赖较 段,分为逻辑覆盖和功能覆盖两大类,覆盖率是测试
强,并且对于一些产品而言,已经不能仅仅依赖手工 过程中关心的重要参数之一。
进行测试,软件测试自动化势在必行。 2.2程序插桩技术
程序插桩技术是实现自动化测试的关键技术。 程序插桩技术是软件自动化测试中的关键技
本文根据嵌入式软件自身的特点,研究了一种适合 术。程序插桩是在静态测试阶段,借助向被测程序
嵌人式软件的程序插桩方法,设计实现了一个程序
文档评论(0)