一种基于测试脚本技术的嵌入式系统自动化检测系统技术方案

技术编号:4126644 阅读:329 留言:0更新日期:2012-04-11 18:40
本发明专利技术公开了一种基于测试脚本技术的嵌入式系统自动化检测系统,该系统包含交联环境建模模块、测试面板配置模块、测试脚本解释器、多任务调度模块、接口驱动模块、数据收集模块、测试报告生成模块、测试管理模块,多任务调度模块根据由脚本解释器解释注册的任务,通过交联环境建模模块传递给接口驱动模块,再由接口驱动模块对被测系统施加激励,从而完成测试,其中接口驱动模块给系统提供统一的接口,本发明专利技术解决了目前的测试系统存在的通用性差、自动化程度低的缺点,并且具有二次开发的能力。

【技术实现步骤摘要】

本专利技术涉及计算机软件技术,特别涉及嵌入式软件的测试,具体涉及一种基于测 试脚本技术的嵌入式系统自动化检测系统。
技术介绍
嵌入式系统一般质量要求较高,如飞机上的飞行控制系统,若失效将造成非常严 重的后果。这样就要求产品在出厂前进行充分的检测与测试;在外场使用时能快速定位产 品故障位置。不论是出厂检测还是外场检测,都要求检测设备能最大程度的实现测试的自 动化,从而提高测试效率,减轻操作人员的工作量,并保证测试的准确性。 多数检测设备在使用时需要测试人员守候在测试设备前执行各项操作,对于需要 出厂的每一样产品都必须重复同样的过程,费时费力且容易出错;有些检测设备虽然实现 了一定程度的自动化,然而它们缺乏对检测流程的描述,所有的自动化测试流程都固化在 代码中,不能适应测试流程的变化。此外,几乎所有的检测设备都有其专用性,因为产品的 接口特性和功能需求不同,这些检测设备只能用来检测特定型号或特定系列的嵌入式产 品,不具有二次开发的能力。
技术实现思路
本专利技术的目的在于提供一种针对嵌入式系统的通用、全自动、并具有二次开发能 力的基于测试脚本技术的嵌入式系统自动化检测系统。为了实现上述目的本专利技术采用的技术方案如下本专利技术提出的一种基于测试脚本技术的嵌入式系统自动化检测系统包括以下模 块交联环境建模模块提供可视化建模界面供测试者对被测系统(SUT =System Under Test)的交联设备进行建模,模型最终保存为XML文件,供主程序使用;测试面板配置模块提供可视化界面,供测试人员使用,进行测试面板的搭建工 作;测试脚本解释器按照测试语句进行各种函数的调用以及测试数据的实时解析和 分发,使测试动作真正被执行;多任务调度模块实现仿真模型以及测试脚本的多任务管理;接口驱动模块介于多任务调度模块和具体硬件的驱动层之间,为多任务调度模 块提供了统一的接口;数据收集模块用于测试数据的收集,存储和管理;测试报告生成模块用于将数据收集模块收集的数据生成测试报告;测试管理模块负责测试流程的管理、测试过程控制,包括选择测试脚本,测试的 启动,暂停,和停止;参见附图1,通过交联环境建模模块提供的可视化建模界面配置SUT的仿真测试环境,然后将配置好的测试环境存成XML格式文件;通过测试面板配置模块提供的可视化 界面选择需要的控件;使用Python语言编写文本格式的测试脚本文件,脚本中描述一个或 多个测试用例的操作;测试管理模块接受用户的指令开始自动化测试,通知多任务调度模 块测试开始,多任务调度模块调用所述的XML文件中的配置信息动态生成仿真交联设备模 型,交联设备模型通过接口驱动模块和SUT相联,然后,多任务调度模块将所述的测试脚本 文件提交给测试脚本解释器进行解释执行,测试脚本解释器根据所述的测试脚本中描述的 测试任务的属性向多任务调度模块提交任务,多任务调度模块将这些测试任务记录下来, 统一调度,多任务调度模块根据其记录的测试任务内容通过交联设备模型、接口驱动模块 向SUT施加测试激励,STU将反馈数据通过接口驱动模块传递给数据收集模块存储,测试报 告生成模块根据用户指令将数据收集模块收集到的数据生成测试报告。所述的交联环境建模模块包括界面工具包提供可视化页面,供测试者对SUT的交联设备进行建模;模型类库用来存储通过用户界面获得模型的相关信息;测试者通过所述的界面工具包提供的可视化界面对SUT的交联设备进行配置、建 模,然后存储到所述的模型类库,通过所述的模型类库中的存储函数把模型的相关信息存 储到XML格式的文件中。所述的测试面板配置模块提供两类控件显示类和控制类,设置控制面板时,首先 导入交联环境模块配置好的XML格式文件,选择需要的显示控件和控制控件,每个显示控 件与一个或多个接口变量绑定起来,每个控制控件同一段测试脚本绑定起来,点击该控制 控件将触发测试脚本解释器对该脚本的执行。所述的接口驱动模块为三层结构板卡层(Board Level)、I0层(10 Level)和管 理层(Management Level)。所述的板卡层位于驱动部分的最底层,其直接操作硬件驱动程序,完成测试数据 的采集和发送;板卡层中定义了多个板卡类和通道类,每个板卡类是一种型号板卡设备的 抽象,每个板卡至少包含一个通道,每个通道和一个变量相互绑定,对于变量的操作可以被 视为对一个物理通道的操作;所述的IO层中定义了多个IO类,IO类是输入输出形式的抽象,每一个IO类对应 一种总线接口 ;在IO类中管理着支持该类型总线的板卡;最后,所述的管理层整体管理所有输入输出类型,并根据配置,为变量分配IO端 口和物理板卡通道;管理层是驱动部分和系统其它模块的接口,系统通过管理层实现对变 量的分配、赋值和取值;管理层检查变量的配置信息是否合法;使用同种总线接口的板卡的信息由板卡层采集后,通过统一的接口——对应该接 口的IO类——由IO层读取,最后由管理层上传至系统的其它模块。所述的数据收集模块使用了 SQLite小型数据库用于测试数据的收集,存储和管 理,并使用双缓存机制存储数据,在把主缓存中的数据写入数据库时,新收集的数据将被写 入辅助缓存中,并添加保护以确保数据缓冲不会发生读写冲突,且数据缓冲和写数据库功 能在不同的线程中实现,写入数据库使用了 SQLite的事务机制。所述的测试脚本在开源脚本Python的基础上作了扩展,增加了扩展模块ts〃, 在Python词法、语法的基础上加入针对实时嵌入式软件测试特性的描述,包括测试输入、获取测试反馈以及执行时间控制、测试结果判断、测试脚本的复用、测试脚本接口几个方面 的实现。本专利技术具有下述有益效果本专利技术提供的交联环境建模工具,使得测试人员可对被测系统的交联设备进行建 模,生成仿真模型,同时,测试者还可以在平台的基础上对仿真模型进行二次开发,添加模 型的动态特性;本专利技术提供的接口驱动模块支持多数标准工业总线接口,采用开放式的架 构,可以较容易的增加新类型接口的驱动,使本系统可以用于测试多种被测设备,通用性 强;本系统的测试脚本基于开源脚本语言python扩展而来,功能强大,语法简单,提高了测 试的自动化程度。附图说明图1为本专利技术基于测试脚本技术的嵌入式系统自动化检测系统的组成结构;图2为交联环境建模示意图;图3为Block类型变量配置界面;图4为429总线协议配置界面;图5为422总线协议配置界面;图6为交联环境的建模过程;图7为多任务调度模块的结构图;图8为接口驱动模块的机构图;图9为通道类的MUL图;图10为板卡类的MUL图;图11为IO类的MUL图;图12为管理类的MUL图;图13为本专利技术的数据结构图;图14为采用本专利技术对嵌入式系统进行自动化检测的实施过程;图15为飞行控制系统的交联环境图。具体实施例方式被测系统的运行需要交联设备的与之配合,本专利技术通过交联环境建模模块提供的可视化建模界面配置被测系统的仿真测试环境。所述的交联环境建模模块的界面工具包采 用MFC的界面工具包提供可视化界面,在可视化界面中可以配置交联环境图,在交联环境 图中采用矩形节点表示交联设备,节点间的连线表示设备之间的接口通讯,所述的接口可 以是如下总线接口 RS-422,RS-232,Al, AO, DI, DO, ARINC-4本文档来自技高网...

【技术保护点】
一种基于测试脚本技术的嵌入式系统自动化检测系统,其特征在于:包括以下模块:交联环境建模模块:提供可视化建模界面供测试者对SUT的交联设备进行建模,模型最终保存为XML文件,供主程序使用;测试面板配置模块:提供可视化界面,供测试人员使用,进行测试面板的搭建工作;测试脚本解释器:按照测试语句进行各种函数的调用以及测试数据的实时解析和分发,使测试动作真正被执行;多任务调度模块:实现仿真模型以及测试脚本的多任务管理;接口驱动模块:介于多任务调度模块和具体硬件的驱动层之间,为多任务调度模块提供了统一的接口;数据收集模块:用于测试数据的收集,存储和管理;测试报告生成模块:用于将数据收集模块收集的数据生成测试报告;测试管理模块:负责测试流程的管理、测试过程控制,包括选择测试脚本,测试的启动,暂停,和停止;通过交联环境建模模块提供的可视化建模界面配置SUT的仿真测试环境,然后将配置好的测试环境存成XML格式文件;通过测试面板配置模块提供的可视化界面选择需要的控件;使用Python语言编写文本格式的测试脚本文件,脚本中描述一个或多个测试用例的操作;测试管理模块接受用户的指令开始自动化测试,通知多任务调度模块测试开始,多任务调度模块调用所述的XML文件中的配置信息动态生成仿真交联设备模型,交联设备模型通过接口驱动模块和SUT相联,然后,多任务调度模块将所述的测试脚本文件提交给测试脚本解释器进行解释执行,测试脚本解释器根据所述的测试脚本中描述的测试任务的属性向多任务调度模块提交任务,多任务调度模块将这些测试任务记录下来,统一调度,多任务调度模块根据其记录的测试任务内容通过交联设备模型、接口驱动模块向SUT施加测试激励,STU将反馈数据通过接口驱动模块传递给数据收集模块存储,测试报告生成模块根据用户指令将数据收集模块收集到的数据生成测试报告。...

【技术特征摘要】
一种基于测试脚本技术的嵌入式系统自动化检测系统,其特征在于包括以下模块交联环境建模模块提供可视化建模界面供测试者对SUT的交联设备进行建模,模型最终保存为XML文件,供主程序使用;测试面板配置模块提供可视化界面,供测试人员使用,进行测试面板的搭建工作;测试脚本解释器按照测试语句进行各种函数的调用以及测试数据的实时解析和分发,使测试动作真正被执行;多任务调度模块实现仿真模型以及测试脚本的多任务管理;接口驱动模块介于多任务调度模块和具体硬件的驱动层之间,为多任务调度模块提供了统一的接口;数据收集模块用于测试数据的收集,存储和管理;测试报告生成模块用于将数据收集模块收集的数据生成测试报告;测试管理模块负责测试流程的管理、测试过程控制,包括选择测试脚本,测试的启动,暂停,和停止;通过交联环境建模模块提供的可视化建模界面配置SUT的仿真测试环境,然后将配置好的测试环境存成XML格式文件;通过测试面板配置模块提供的可视化界面选择需要的控件;使用Python语言编写文本格式的测试脚本文件,脚本中描述一个或多个测试用例的操作;测试管理模块接受用户的指令开始自动化测试,通知多任务调度模块测试开始,多任务调度模块调用所述的XML文件中的配置信息动态生成仿真交联设备模型,交联设备模型通过接口驱动模块和SUT相联,然后,多任务调度模块将所述的测试脚本文件提交给测试脚本解释器进行解释执行,测试脚本解释器根据所述的测试脚本中描述的测试任务的属性向多任务调度模块提交任务,多任务调度模块将这些测试任务记录下来,统一调度,多任务调度模块根据其记录的测试任务内容通过交联设备模型、接口驱动模块向SUT施加测试激励,STU将反馈数据通过接口驱动模块传递给数据收集模块存储,测试报告生成模块根据用户指令将数据收集模块收集到的数据生成测试报告。2.权利要求1所述的系统,其特征在于 所述的交联环境建模模块包括界面工具包提供可视化页面,供测试者对SUT的交联设备进行建模; 模型类库用来存储通过用户界面获得模型的相关信息;测试者通过所述的界面工具包提供的可视化界面对SUT的交联设备进行配置、建模, 然后存储到所述的模型类库,通过所述的模型类库中的存储函数把模型的相关信息存储到 XML格式的文件中。3.权利要求2所述的系统,其特征在于所述的交联环境建模模块的界面工具包采用 MFC的界面工具包提供可视化界面,在可视化界面中可以配置交联环境图,在交联环境图中 采用矩形节点表示交联设备,节点间的连线表示设备之间的接口通讯,所述的接口可以是 如下总线接口 :RS-422, RS-232,AI,AO, DI,DO, ARINC-429,连线上可配置接口变量,配置 完接口变量,可以根据用户的需求对变量的属性进行配置,这些变量属性包括传输类型,周 期,变量类型,初始值等;所述的变量类型是Block类型;所述的交联环境建模模块为每个 模型节点和连接分别绑定一个唯一的UUID,并且记录其在交联环境图中的位置信息。4.权利要求1所述的系统,其特征在于所述的测试面板配置模块提供两类控件显示 类和控制类,设置控制面板时,首先导入交联环境模块配置好的XML格式文件,选择需要的 显示控件和控制控件,每个显示控件与一个或多个接口变量绑定起来,每个控制控件同一 段测试脚本绑定起来,点击该控制控件将触发测试脚本解释器对该脚本的执行。5.权利要求1所述的系统,其特征在于所述的接口驱动模块为三层结构板卡层、10 层和管理层;所述的板卡层位于驱动部分的最底层,其直接操作硬件驱动程序,完成测试数据的采 集和发送;板卡层中定义了多个板卡类和通道...

【专利技术属性】
技术研发人员:刘斌蒋崇武
申请(专利权)人:北京伟晨豪嘉科技有限责任公司刘斌蒋崇武
类型:发明
国别省市:11[中国|北京]

相关技术
    暂无相关专利
网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1