一种航天器测试脚本语义识别与自动生成方法技术

技术编号:7483745 阅读:199 留言:0更新日期:2012-07-05 19:52
本发明专利技术为一种航天器测试脚本语义识别与自动生成方法,应用于航天器自动化测试领域。第一步:建立描述航天器测试用例表格化模块,对测试用例中的各步骤设置步骤数据列,第二步:建立描述测试脚本语法与测试用例表格化模板的绑定关系配置模块,采用XML语言实现对测试脚本语法元素和测试用例表格化模板中相应列的绑定关系的描述;第三步:基于测试用例表格化模块和绑定关系配置模块实现测试脚本自动生成引擎模块,通过该引擎进行解析测试用例表格,并读取其脚本语法绑定配置文件。本发明专利技术测试人员能够直接填写测试步骤的参数,无需掌握底层脚本语言的语法,所有测试用例以表格形式维护,测试业务逻辑清晰且维护工作量减小。

【技术实现步骤摘要】

本专利技术涉及一种测试脚本的自动生成方法,应用于航天器自动化测试领域.
技术介绍
在卫星测试领域,目前已经具备利用脚本进行一定程度自动化测试的条件,但是测试脚本语法通常比较复杂,对不熟悉脚本语法的测试人员而言,不便于直接编写脚本。且航天器测试用例数量很大,直接编写和维护测试用例脚本的工作量很大。
技术实现思路
本专利技术提供,测试人员能够直接填写测试步骤的参数,无需掌握底层脚本语言的语法,所有测试用例以表格形式维护,测试业务逻辑清晰且维护工作量减小。本专利技术的技术解决方案是提出, 包括以下步骤第一步建立描述航天器测试用例表格化模块,对测试用例中的各步骤设置步骤数据列,不设置操作关键字列;测试用例编写人员通过在该模板中的逐行填写任意一个测试用例的各测试步骤所需的步骤数据,来形成具有流程和步骤数据的测试用例表格;第二步建立描述测试脚本语法与测试用例表格化模板的绑定关系配置模块,采用XML语言实现对测试脚本语法元素和测试用例表格化模板中相应列的绑定关系的描述; 通过应用不同的配置文件,实现将不同结构的测试用例表格化模板与不同的测试脚本语言语法进行绑定;第三步基于测试用例表格化模块和绑定关系配置模块实现测试脚本自动生成引擎模块,通过该引擎进行解析测试用例表格,并读取其脚本语法绑定配置文件,逐行将各列内容绑定的脚本语言语法元素相关联,然后对单元格内容即测试参数进行基于正则表达式的模式识别,获取其语义,进而自动生成相应的脚本。测试脚本自动生成引擎模块包括表格解析模块、配置文件解析模块和脚本生成模块;其中表格解析模块负责逐行、逐列解析测试用例表格内容,配置文件解析模块负责解析基于XML的测试脚本语法与测试用例表格化模板的绑定关系的配置文件,获取表格内容所对应的脚本语法元素,脚本生成模块负责通过正则表达式的模式匹配,生成脚本文本。本专利技术的有益效果1.现有脚本生成技术需要指定操作关键字和数据(关键字驱动方法),或者事先固化测试脚本执行逻辑,测试人员填写用例数据,在测试脚本执行时动态读取数据(数据驱动方法)。关键字驱动方法需要测试人员记忆关键字并使用,不便于掌握。数据驱动方法不需要测试人员指定关键字,只需指定测试数据参数,但是测试逻辑是固化的,修改测试逻辑还需要直接修改脚本代码。本专利技术通过脚本自动生成引擎进行模式识别,解析表格化模板内容的语义,使用者无需在模板中指定操作类型,只需填入具体参数,系统就能识别操作类型,并生成相应脚本。建立和维护测试脚本都十分方便。2.表格模板可与不同脚本语法规则绑定,脚本生成引擎具有通用性,可以生成多种脚本。具体实施例方式本专利技术的航天器测试脚本语义识别与自动生成方法首先建立描述航天器测试用例表格化模块,该表格的基本结构如下,并可由测试用例编写人员在基本结构上进行扩展新的列。表1测试用例表格化模板基本结构模板名称.......模板代号…… 测试用例名称…… 测试用例代号.......步骤序号步骤数据执行成功后的步骤数据执行失败后的步骤数据备注测试人员根据测试用例在表格化模板中直接填写每个测试步骤的步骤数据(例如遥控指令号、遥测参数判别条件、测试流程控制类型与跳转的目标步骤号等),无需在模板中指定操作动作,不依赖于脚本语言的关键字和语法格式;向表格化模板填写完步骤数据后,形成的测试用例表格实例如下。表2测试用例表格实例模板名称……模板代号…… 测试用例名称…… 测试用例代号……步骤序号步骤数据执行成功后的步骤数据执行失败后的步骤数据备注1M号指令2i>i y参数>0JUMP:x判读参数值失败则跳转到第X 步3AA号序列4j号参数=0N号指令P号指令η (η>=1)Q号指令k号参数=1其次建立描述测试脚本语法与测试用例表格化模板的绑定关系配置模块,用来描述测试用例表格化模板的各列到特定的某种脚本各语法元素的绑定关系。该配置文件的结构如下。〈!一绑定关系配置信息一〉〈bindingConfig>〈script〉脚本语言名称〈/script〉〈template〉测试用例表格化模板代号〈/template〉〈binding〉〈column no=咧号1"scriptelEment="语法关键字’pattern="语法模式识别正则表达式“〉〈column no='列号2"scriptelEment="语法关键字'pattern="语法模式识别正则表达式“〉〈column no=’列号η"scriptelEment="语法关键字’pattern="语法模式识别正则表达式“〉</binding></bindingConfig>最后基于测试用例表格化模块和绑定关系配置模块实现测试脚本自动生成引擎模块,该引擎能够解析测试用例表格的并读取其脚本语法绑定配置文件,逐行将各列内容绑定的脚本语言语法元素相关联,然后自动对单元格内容(即测试参数)进行基于正则表达式的模式识别,获取其语义,进而自动生成相应的脚本。当测试业务发生显著变化需要更改表格化模板,或需要使用新的测试脚本语言时,可以灵活的修改表格与脚本语法绑定的配置文件,不需要修改脚本自动生成引擎,即可快速适应新的脚本生成需求。脚本自动生成引擎包括3个模块表格解析模块负责逐行、逐列解析测试用例表格内容;配置文件解析模块解析基于XML的测试脚本语法与测试用例表格化模板的绑定关系的配置文件,获取表格内容所对应的脚本语法元素;脚本生成模块通过正则表达式的模式匹配,生成脚本文本。综上,测试人员根据测试用例的实际流程,直接在表格中填写每个测试步骤的参数(例如遥控指令号、遥测参数判别条件、测试流程控制),无需在模板中指定操作类型,不依赖于脚本语言的关键字和语法格式;设计并实现了一种测试脚本自动生成引擎,该引擎能对测试用例表格中的测试参数进行模式识别,获取其语义,进而自动生成相应的脚本;表格化模板可与不同脚本语法规则绑定,绑定信息采用配置文件进行描述,脚本生成引擎具有一定的通用性,可根据不同表格化模板和绑定配置生成多种脚本。权利要求1.,其特征在于,包括以下步骤 第一步建立描述航天器测试用例表格化模块,对测试用例中的各步骤设置步骤数据列,不设置操作关键字列;测试用例编写人员通过在该模板中的逐行填写任意一个测试用例的各测试步骤所需的步骤数据,来形成具有流程和步骤数据的测试用例表格;第二步建立描述测试脚本语法与测试用例表格化模板的绑定关系配置模块,采用 XML语言实现对测试脚本语法元素和测试用例表格化模板中相应列的绑定关系的描述;通过应用不同的配置文件,实现将不同结构的测试用例表格化模板与不同的测试脚本语言语法进行绑定;第三步基于测试用例表格化模块和绑定关系配置模块实现测试脚本自动生成引擎模块,通过该引擎进行解析测试用例表格,并读取其脚本语法绑定配置文件,逐行将各列内容绑定的脚本语言语法元素相关联,然后对单元格内容即测试参数进行基于正则表达式的模式识别,获取其语义,进而自动生成相应的脚本。2.如权利要求1所述的,其特征在于, 测试脚本自动生成引擎模块包括表格解析模块、配置文件解析模块和脚本生成模块;其中表格解析模块负责逐行、逐列解析测试用例表格内容,配置文件解析模块负责解析基于XML 的测试脚本语法与测试用例表格化模板的绑定关系的配置文本文档来自技高网...

【技术保护点】

【技术特征摘要】

【专利技术属性】
技术研发人员:吕伟闫金栋张海祥
申请(专利权)人:北京空间飞行器总体设计部
类型:发明
国别省市:

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

1
相关领域技术