• 软件测试技术
  • 软件测试博客
  • 软件测试视频
  • 开源软件测试技术
  • 软件测试论坛
  • 软件测试沙龙
  • 软件测试资料下载
  • 软件测试杂志
  • 软件测试人才招聘
    暂时没有公告

字号: | 推荐给好友 上一篇 | 下一篇

嵌入式软件测试浅谈

发布: 2009-12-29 11:56 | 作者: 不详 | 来源: 领测软件测试网采编 | 查看: 134次 | 进入软件测试论坛讨论

领测软件测试网

  嵌入式软件测试浅谈   软件测试工具 

   关键字: 嵌入式软件 单元测试 Unit Testing

  嵌入式软件测试与普通软件测试的目的一样,都是为了发现软件缺陷,而后修正缺陷以提高软件的可靠性。嵌入式系统安全性的失效可能会导致灾难性后果,即使非安全性失效,由于其应用场合特殊也会导致重大经济损失。因此,往往嵌入式软件对可靠性的要求比普通软件高。这就要求对嵌入式软件进行严格的测试、确认和验证,以提高产品的可靠性。

  不过由于嵌入式软件的多样性,基于的操作系统,使用的开发环境,微控制器都是日益繁多,完整规范的测试实现起来比较困难,一般企业都是直接进行系统测试。单元测试,集成测试由于测试执行的运行环境建立困难,执行效率低下,或者维护困难就往往被忽略。

  实际上,只要时间上做好安排,确立测试方案,根据情况建立单元测试环境,还是可以顺利实施单元测试,尽早发现软件缺陷,整体上获得时效,提高了系统可靠性。文中笔者就根据多年工作实践,将嵌入式软件单元测试相关的一些经验与大家分享,同时抛砖引玉。

  测试环境

  单元测试首先需要动态运行代码的环境,嵌入式软件开发环境往往是交叉开发环境,我们希望将代码移植到开发主机上运行(比如Windows系统),这样做有几个好处:

  1 可以利用高速的主机提高代码运行效率;

  2 有利于测试管理,便于测试用例输入和形成测试结果报表和维护;

  3 充分利用Windows系统的测试工具,实现自动化测试

  不过移植代码至Windows系统需要将嵌入式软件的API都移植到Windows,形成虚拟系统接口层,这种方法往往是长期使用这一嵌入式系统,一劳永逸的长远性方案。

  当然还可以通过购买使用一些商用的工具,比如CodeTest,VcTester,使用这些工具在嵌入式系统上直接开展单元测试工作。

  这两种方案对于一些中小企业来说,由于不愿投入这么大人力物力,不能建立长期有效的开发方案而无法实施。对于这种条件还可以采用一种投入较小的短时方案,直接在程序中加入测试代码,直接在目标板上运行查看结果,测试用例也可以直接在代码中,或者通过接口从主机获得测试输入及输出测试结果。这一方案对于测试硬件驱动也是相当适用的,比如测试某设备读写做了以下c语言代码(详见本刊网站):

  在实际平台上运行该代码执行测试,这种方法主要用于单元的功能测试。虽然需要在单元测试阶段编写额外的代码,但是由上面例子可见,被测单元接口定义清晰,测试代码很容易完成,至于测试用例的编写是无法避免的。正式发布代码时通过条件编译将这些代码屏蔽即可。

  测试策略

  从测试效果上看,当然是花费越多的时间、人力,发现的问题越多,产品的质量控制得更好。但实际上,彻底做好软件单元测试几乎是不可能的,我们需要综合考虑成本和效率,这是实际产品开发中经常遇到的问题,都面对这样两难的境地——上市时间延误而没有及时占领市场;或是时间上抢先,不过测试不充分导致出厂的产品质量不高。如果测试时间不充足,如何在限定时间内更好地完成测试工作呢?

延伸阅读

文章来源于领测软件测试网 https://www.ltesting.net/

21/212>

关于领测软件测试网 | 领测软件测试网合作伙伴 | 广告服务 | 投稿指南 | 联系我们 | 网站地图 | 友情链接
版权所有(C) 2003-2010 TestAge(领测软件测试网)|领测国际科技(北京)有限公司|软件测试工程师培训网 All Rights Reserved
北京市海淀区中关村南大街9号北京理工科技大厦1402室 京ICP备10010545号-5
技术支持和业务联系:info@testage.com.cn 电话:010-51297073

软件测试 | 领测国际ISTQBISTQB官网TMMiTMMi认证国际软件测试工程师认证领测软件测试网