常用嵌入式系统软件仿真自动化黑盒测试平台

常用嵌入式系统软件仿真自动化黑盒测试平台

一、 ETest

简介

通用嵌入式系统测试平台(Embedded System Interface Test Studio,简称:ETest)是针对嵌入式系统进行实时、闭环、非侵入式测试的自动化测试平台,适用于嵌入式系统在设计、仿真、开发、调试、测试、集成验证和维护等各阶段配置项级别和系统级别的动态测试与验证。

 主要特点

  • 是一套完整的针对嵌入式系统的自动化动态确认测试平台,可以实现硬件在环、非侵入式的系统级测试,完成基于实装难以完成的测试任务;
  • 集成测试资源管理、测试环境描述、协议脚本开发、测试用例设计、测试执行监控、测试任务管理等功能为一体;
  • 具有通用化的通信协议定义与描述语言处理环境,可以定义和描述各类结构的总线协议;
  • 具有高度开放的协议模板管理接口,通过不断在测试中积累各领域的应用层协议,实现针对不同领域嵌入式系统自动化测试解决方案的快速构建;
  • 提供丰富的测试监控仪表和高度灵活的协议字段绑定方法,支持收发数据字段的双向绑定,并具有表达式绑定能力;
  • 集可视化窗体灵活配置的人工测试与脚本化语言高级开发的自动化测试于一体,满足初、中、高不同级别的测试需求;
  • 提供测试用例脚本编辑与开发环境,通过简单的通道与协议字段赋值,便可完成测试数据的收发与测试逻辑的判断;
  • 在底层实现了接口与通道管理、协议组包与解包、协议的校验、测试参数的组合等功能,测试人员只需将关注点放在测试逻辑的设计与实现上;
  • 具有插件化的功能扩充能力,无论是通信协议描述还是测试用例描述,平台都提供了对插件的开发支持;
  • 具有分布式的软件体系架构和计算能力,可实现从单机到多机不同规模

的测试环境构建;

  • 可以完成单配置项单接口、单配置项多接口以及多配置项的系统测试任务;
  • 支持多种类型测试:功能测试、接口测试、边界测试、强度测试、安全

性测试、恢复性测试、性能测试、敏感性测试、余量测试、容量测试、压力测试、

随机测试、异常测试等。

 主要功能

  • 支持的 I/O 接口类型包括:RS232、RS422、RS485、MIL-STD-1553B、CAN、 TCP、UDP、AD、DA、DI、DO、ARINC429、FlexRay、SPI、I2C,并可灵活补充扩展;
  • 支持对待测系统及其外围环境、接口情况等进行可视化仿真建模设计;
  • 提供通讯协议描述语言(DPD 语言)及其编译编辑环境;
  • 支持自定义可视化数据监控界面以及实时数据监控;
  • 具有测试用例脚本编辑、开发与执行能力;
  • 实时记录测试数据并加时间戳自动保存;
  • 提供测试数据生成、接口调试等相关工具;
  • 支持测试数据管理及统计分析; ² 高精度的数据采集及数据转换;
  • 可通过表格、仪表、枚举、曲线图以及状态灯等手段实时监测关键变量;
  • 可按二进制、十进制、十六进制监测输入与输出的原始报文并查询过滤;
  • 支持测试记录及结果的查看、测试报告自动生成;
  • 测试脚本语言支持时序测试和多线程任务测试;
  • 系统扩展能力强,可灵活组建大、中、小不同规模的测试环境;
  • 可根据测试需求集成函数发生器与高性能示波器等测试设备。

 价格

共享版免费,商用版本价格不详。

        

二、 QTP

简介

QTP是quicktest Professional的简称,是一种自动测试工具。使用QTP的目的是想用它来执行重复的自动化测试,主要是用于回归测试和测试同一软件的新版本。因此你在测试前要考虑好如何对应用程序进行测试,例如要测试哪些功能、操作步骤、输入数据和期望的输

出数据等。

 主要特点

  • QTP 是一个侧重于功能的回归自动化测试工具;提供了很多插件,如:.NET 的,Java 的,SAP 的,Terminal Emulator 的等等,分别用于各自类型的产品测试。默认提供 Web,ActiveX 和 VB。[2]  
  • QTP 支持的脚本语言是 VBScript,这对于测试人员来说,感觉要“舒服”得多(如相比 SilkTest 采用 C#,Java,4Test 语言)。VBScript 毕竟是一种松散的、非严格的、普及面很广的语言。
  • QTP 支持录制和回放的功能。录制产生的脚本,可以拿来作为自己编写脚本的 template。录制时,还支持一种 lower level 功能,这个对于 QTP 不容易识别出来的对象有用,不过它是使用坐标来标识的,对于坐标位置频繁变动的对象,采用这种方式不可行。另外,QTP 的编辑器支持两种视图:Keyword 模式和 Expert 模式。Keyword 模式想法是好的,提供一个 描述近似于原始测试用例的、跟代码无关的视图(我基本很少用,除了查看、管理当前 test 中各个 action 的完整流程),而 Expert 就是代码视图,一般编写脚本都在这

个区域。

  • 一个有用的工具:Object Spy,可以用来查看 Run-time object 和 Test object 属性和方法。
  • QTP 通过三类属性来识别对象:a)Mandatory; b)Assistive; c)Ordinal identifiers。大部分情况下,通过对象的一些特定属性值就可以识别对象(类型 a)。这些属性可以通过 Tools->Object Identification 定义。
  • Object Repository(OR)是 QTP 存储对象的地方。测试脚本运行后,QTP 根据测试脚本代码,从这个对象库中查找相应对象。每个 Action 可以对应有一个或者多个 OR,也可以设置某个 OR 为 sharable 的,这样可以供其他 Action 使用。注意,使用 QTP 录制功能时,默认将被测对象放在 local OR 中,可以通过 Resources->Object Respository,选择 Local 查看。
  • 说到 QTP 的要点,不得不说 Action。Action 是 QTP 组织测试用例的具体形式,拥有自己的 DataTable 和 Object Repository,支持 Input 和 output 参数。Action 可以设置为 share 类型的,这样可以被其他 test 中的 Action 调用(注意:QTP 是不支持在一个 test 中调用另外一个 test 的,只有通过 sharable action 来调

用)。

  • 如 3)所述,一个 test 中,多个 action 的流程组织,只有通过 Keyword 视图

查看和删除,在 Expert 视图中没有办法看到。

  • 调用 Action 可以通过菜单 Insert->Call to *** 来实现。QTP 提供三种类型的调

用方式:a)call to new Action,在当前 test 中创建一个新的 Action;b)call to Copy of Action;c)call to existing action,调用一个 re-usable action,如果这

个 re-usable action 来自另外一个 test,将以只读的方式插入到当前 test 中。

  • QTP 提供 excel 形式的数据表格 DataTable,可以用来存放测试数据或参数。 DataTable 有两种类型:global 和 local。QTP 为 DataTable 提供了许多方法供存取数据,在对测试代码进行参数化的时候,这些方法非常有用。
  • 环境变量(Environment Variables)。在一个 test 中,环境变量可以被当前 test 中所有 action 共享。环境变量也有两种类型:build in 和 user defined。用户

自定义的环境变量可以指向一个 XML 文件,这样可以实现在众多 test 之间共享变量。

  • QTP 可以引用外部的 VBS 代码库,通过 Settings-》Resource 加入,也可以 ExecuteFile 命令在代码中直接执行。这种 VBS 库可以为所有 action 和 test 共享。
  • QTP 默认为每个 test 提供一个测试结果,包括 Passed,Failed,Done,Warning 和 information 几种状态类型,可以进行对结果 Filter。但是,只能为每个 test

产生一个 testing result,不能为多个 testing 产生一个总的 testing result.

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
说明1:<br>在使用基于MinGW嵌入式软件仿真调试平台之前,需要首先安装绿色的MinGW C/C++编译环境,参考笔者发布的文档《MinGW的使用指南》。<br><br>下载地址:<br>http://www.51emb.com/forum_view.asp?forum_id=2&view_id=2468<br>or http://bbs.cnttr.com/archiver/?tid-113142.html<br><br>备注A:学习完该文档后,您将有基于makefile文件编译C/C++代码嵌入式软件开发基本概念。<br>备注B:如果MinGW的下载过慢或者不想下载,可以联系笔者提供MinGW的刻录光盘(非免费),同时包括本文档相关的测试代码以及额外的嵌入式软件开发相关笔者整理的珍贵资料。<br><br>说明2:<br>基于MinGW嵌入式软件仿真调试平台是笔者工作中做嵌入式软件平台对Linux、windows、VxWorks、Cygwin 进行Porting时练手完成的一个业余结果。从笔者这几年从事嵌入式软件开发的经验和思考看,其对嵌入式软件入门者有一定的帮助;对高手者咱是班门弄斧,建议您直接从硬盘删除它。<br><br>成熟的企业一般均有自己的仿真平台,比如Huawei某些产品基于VC++仿真,另一些公司建立了命令行模式下vxWorks仿真平台,还有有一些小公司直接基于VxWork的集成开发环境中vxSim仿真,更多的有商业化的Linux嵌入式软件仿真平台。如果您手头有VxWorks的安装软件,也可以基于vxsim进行仿真。这些基于企业级商业化仿真平台对成熟工程师来说不是问题,对于入门者来说有一定难度,也不一定有这些商用的软件。如果您没有上述条件,想进入嵌入式软件开发行业,可以试试笔者的MinGW嵌入式软件仿真调试平台,为您开启嵌入式软件开发中三个最重要的概念:任务(Task),消息队列(MsgQ),信号量(Semaphore)。(笔者工作中在写嵌入式模块,如芯片驱动模块、协议实现模块、普通应用层模块总结出的典型三要素)<br><br>本软件包中提供的仿真平台库使用期限至2008年。如果您认为对您有帮助,2008年之后仍希望使用,很抱歉您不得不向笔者提供50元的费用注册得到至2010的正式版本。笔者亦是一草根打工阶层,该平台也花费了笔者一定的劳动时间。<br><br>说明3:<br>笔者入行嵌入式软件开发这几年来,阅读过还算大量的嵌入式C/C++源代码,除一些专业的以卖源代码为生公司其代码风格写的还算好之外(如(http://www.dataconnection.com/) Data Connection,该公司主要卖路由、NGN等通信软件源代码和服务);大部分的嵌入式软件公司源代码风格有些糟糕;开源软件的代码更是如此,至少在笔者开来,对Linux内核源代码的风格不是很苟同。<br><br>说明4:<br>本软件包中提供的仿真平台库中有适量的源代码,采用sourceInsight 或者 UltraEdit打开时,把字体配置为Courier New 格式,才可以看到正确的源代码排版和风格。<br>
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值