如何评估嵌入式软件测试工具

如何评估嵌入式软件测试工具

ID:9231569

大小:301.18 KB

页数:18页

时间:2018-04-24

如何评估嵌入式软件测试工具_第1页
如何评估嵌入式软件测试工具_第2页
如何评估嵌入式软件测试工具_第3页
如何评估嵌入式软件测试工具_第4页
如何评估嵌入式软件测试工具_第5页
资源描述:

《如何评估嵌入式软件测试工具》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、VectorSoftware白皮书如何评估嵌入式软件测试工具你的测试工具有些什么功能?在过去的几年中,测试自动化工具市场已经变得混乱。所有的工具都声称能做同样一件事情:自动化测试。维基百科仅列出了38条C/C++测试框架。然而当潜在的用户在浏览产品资料或观看简单的演示时,许多的这些测试工具看上去都是极其相似的。本文主要为工程师在评估软件测试自动化工具,尤其是动态的测试自动化工具时应考虑的问题提供参考。你不能通过阅读资料表来评估一个测试工具所有的资料表都是大同小异的。商业用语都是相同的,比如:“行业领导者”、“独

2、一无二的技术”、“自动化的测试”和“领先技术”等。屏幕截图也都是相似的:“条形图”、“流程图”、“HTML报告”和“状态的百分比”。让人看得都麻木了。什么是软件测试?所有做过软件测试的人都知道测试有很多类型。为简单起见,本文中我们将讨论以下三个方面:>系统测试:测试完全集成的应用系统>集成测试:测试集成的子系统>单元测试:测试一些单个的文件或类在大家做过的系统测试中,有一些跟最终用户将要做的操作是一样的。请注意,我们说的是“一些”,而不是“全部”。导致应用程序运行失败出现bug的最常见的情况是在程序的输入域中输

3、入了预料之外的未经测试过的输入组合。©2012‐ Allrightsreserved ‐ VectorSoftwareVectorCAST.com如何评估嵌入式软件测试工具做集成测试的人不多,做单元测试的就更少了。如果你做过集成或单元测试,你很可能会痛苦地意识到从应用程序的其余部分隔离单个文件或一组文件必须生成的测试代码的数量是巨大的。在最严格的测试等级中,测试代码的编写量大于被测程序代码量的情况并不少见。因此,这些级别的测试通常应用于任务和安全型关键系统的市场中,比如航空、医疗设备、铁路。什么是“自动化测试”

4、?众所周知,手工的单元和集成测试过程是非常费力和费时的;因此所有进入这个市场出售的工具都将大力宣传“自动化测试”作为他们的获利点。但是,什么是“自动化测试”?自动化对不同的人理解会不一样。对于许多工程师来说,“自动化测试”意味着他们可以按下一个按钮,或者在“勾选框”中打上绿色的勾,表示他们的代码是正确的,或用“红色X”表示执行失败。遗憾的是这样的工具是不存在的。更重要的是,如果这种工具真的存在,你会想要使用它吗?好好想想吧。工具告诉你,你的代码是“OK”的,这意味着什么呢?它意味着代码格式化很好吗?也许吧。它意

5、味着符合你的编码标准吗?也许吧。它意味着你的代码是正确的吗?显然没有!完全自动化的测试是无法达到的,也不是可取的。自动化应处理测试过程中那些基本的逻辑算法的部分和劳力密集的部分。这将使软件工程师有更多的时间去做价值更高的测试工作,比如设计更好和更完整的测试。评估工具时要问到的一个合理的问题是:“这个工具提供了多大程度的自动化?”这其实也是一个公司试图计算工具的投资回报率时所面对的最模糊的而又最主要的不确定性因素。©2012‐ Allrightsreserved ‐ VectorSoftware第2页Vector

6、CAST.com如何评估嵌入式软件测试工具测试工具剖析测试工具通常提供了各种各样的功能。对于不同的工具,厂商使用的名称是不同的,一些工具可能会缺失某些功能。作为一个公共的参考框架,我们为你评估的测试工具中可能存在的“模块”选择了下面的名称:解析器解析器模块让工具能够理解你的代码。它读取代码,并为代码创建一(Parser)个中间表示(通常以树结构的形式)。基本上与编译器所做的相同。输出或”解析数据”通常被保存在一个中间语言(IL)文件中。代码生成器代码生成器模块采用“解析数据”来构建测试框架的源代码。测试框架虽然

7、测试框架不是工具中的专门部分;但在测试框架的体系结构中所(Test作的测试会影响工具所有的其它功能。因此,评估工具时框架结构是harness)非常重要的。编译器编译器模块允许测试工具调用编译器来编译和链接测试框架。目标环境目标模块使测试可以在不同的运行时环境中轻松地运行,包括支持模(Target)拟器、仿真器、嵌入式调试器和商业RTOS。测试编辑器测试编辑器允许用户使用脚本语言或复杂的图形用户界面(GUI)为测试用例设置先决条件和预期值(通过/失败的标准)覆盖率覆盖率模块使用户能获取执行每个测试所覆盖的代码部分

8、的测试报告报告报告模块允许获取的各种数据被生成项目文档。命令行命令行(CLI)使工具的使用进一步自动化,可以从脚本、makefile文(CLI)件等来调用工具。回归测试回归测试模块允许针对一个应用程序的某个版本创建的测试用例在新版本中重新运行。集成与第三方工具的集成是一个充分利用你对测试工具的投资的有趣的方式。常见的集成有与配置管理工具、需求管理工具和静态分析工具的集成。后面的部分将详

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。