本发明专利技术公开了一种可视化生成面向信号应用程序代码的方法及装置,IEEE 1641标准以信号为基础规范了测试过程的描述和建模;IEEE 1671标准为自动测试系统(Automatic Test System,ATS)中各部件以及自动测试系统间的信息共享和移植提供了规范的信息格式;本发明专利技术利用可视化建模技术,将测试需求转换成ATML测试描述代码,并可以在可视化模块与文本代码间自由转换,提高面向信号测试程序集(Test Program Set,TPS)的开发效率。
【技术实现步骤摘要】
【专利摘要】本专利技术公开了一种可视化生成面向信号应用程序代码的方法及装置,IEEE 1641标准以信号为基础规范了测试过程的描述和建模;IEEE 1671标准为自动测试系统(Automatic Test System,ATS)中各部件以及自动测试系统间的信息共享和移植提供了规范的信息格式;本专利技术利用可视化建模技术,将测试需求转换成ATML测试描述代码,并可以在可视化模块与文本代码间自由转换,提高面向信号测试程序集(Test Program Set,TPS)的开发效率。【专利说明】一种可视化生成面向信号应用程序代码的方法及装置
本专利技术属于测试测量(Test and Measurement, T&M)领域,具体来说是一种可视化生成符合IEEE 1641标准和IEEE 1671标准面向信号的应用程序代码的方法以及装置。
技术介绍
ATS中,TPS的重用性及可移植性是非常重要的衡量指标。从TPS的开发的发展过程逐步经历了面向仪器到面向功能,再到面向信号的转变。 其中面向仪器的TPS开发基于仪器功能,思路简单直观,直接利用测试仪器所提供的应用程序接口(Applicat1n Programming Interface,API)来实现测试需求,可互换虚拟仪器(Interchangeable Virtual Instrument, IVI)标准是其典型代表。但这种方式的缺点是测试与具体的仪器绑定,难以保证软件的移植性,也致使TPS通用性变差、开发周期偏长。 在面向功能的TPS开发方面,软件不再与具体仪器绑定,而是面向各种特定的仪器功能接口,IV1-MSS (Measurement and Stimulus Subsystems)标准是其典型代表。但由于这些功能接口通常是由特定厂商规定的,因此软件的移植性还是受到限制。 面向信号的TPS开发方式基于被测对象(Unit Under Test,UUT)的测试需求和测试资源的测试/激励能力,解决了需求与供应之间的矛盾,通用性强,是实现代码移植性的最终解决方案。ATML标准就是基于此应运而生,由IEEE 1671.1测试描述标准以及其他测试资源描述标准共同构成,标准以XML格式提供了各种对象的形式化表达,如何将这些数据转换为实际的应用就成了一个现实问题。 目前常见的面向信号的TPS开发环境一般可以分为两类,一种是采用图形化的方式,另一种是采用文本的方式。 图形化编程环境中一般包含了若干图元库,图元库中包括了基本数据元素,如信号函数、测试步骤等,以及基于这些数据元素的各种基本和高级操作,如“加”、“减”、“乘”、“除”、“滤波”等等,典型产品例如欧洲的EADS公司的NewWaveX等。编程者只要将这些基本图元按照需要用线条连接就可以编制成特定逻辑的信号函数,这种方式构建的应用程序从外观上类似于逻辑框图。这种方式的优点是直观快捷,但缺点是不适用于大型软件的开发,特别是当其中具有复杂算法时,框图中过多的连线往往会造成理解以及维护上的困难。 基于文本的编程方式,通常由前端代码文本编辑器以及后端的编译器、链接器等部件构成,以文本的方式按照特定的语法词法规则组织数据以及指令,这也是传统的应用程序开发方式,采用的多是各种高级语言,如C、C++、VB等等,美国的AAI公司开发的SEPT(Software Environment for Product Test)软件就是这方面的代表。SEPT使用符合ATML中IEEE Std 1671.1 Test Descript1n标准的XML文件作为中间语言,使用C++代码完成测试逻辑的实现。这种方式可以用于各种规模软件的开发,但是从时效性角度来看,对于逻辑规模不大的应用,相较于图形方式优势不明显。 出于快速交付应用的迫切需要,近几年在软件行业,包括测试测量领域的软件中还出现了介于上述二者之间的辅助工具,即各种各样的代码生成器,通过这些代码生成工具,规避了传统编程过程中可能存在的语法不规范的问题,借此提高开发效率以及代码复用率、降低开发成本。通常的做法都是在前端完成可视化编辑后,由工具生成相应业务代码。但是目前的代码生成器,难以在代码模型与图形模型间实时同步,即如果用户在代码端修改了关键逻辑,在图形端是无法体现这种变化的,从工程可维护性上体验是较差的。
技术实现思路
本专利技术提供了一种可视化生成面向信号应用程序代码的方法和装置,用于简单方便的将测试需求转换为符合STD以及ATML的项目代码,提高开发效率的同时,保证数据间的一致性。 为解决以上的技术问题,本专利技术的第一个方面是一种可视化生成面向信号应用程序代码的方法,其特征是,包括如下步骤:1)选择目标代码语言,根据所选择的语言加载相应的语法规则;2)基于ATML和STD标准,初始化测试资源和信号函数等数据对象;3)获取测试描述数据对象,根据所选的目标语言,生成相应的代码框架,以及相应的设计界面;4)获取测试资源以及STD等数据对象,插入测试描述设计界面,同时在代将对应的代码插入代码框架;5)在设计界面修改测试描述或修改测试描述代码,同时同步修改另一个页面的测试描述内容;6)保存最终测试描述代码。 所述目标代码语言可以是各种面向对象的编程语言,如C#、Java、C++、Basic、Python 等。 所述测试资源指ATS中参与测试的要素,包括测试仪器、接口适配器以及UUT ;所述信号函数指STD标准中的信号函数,包括基本信号组件(Basic SignalComponent, BSC)和测试信号框架(Test Signal Framework, TSF);所述数据对象是使用目标代码语言语法定义数据的属性、描述以及行为等,例如类(Class);所述代码框架指符合目标代码语言语法仅包括基本语言组件构成的模板;所述设计界面是支持控件拖放的可视化容器。 本专利技术的第二个方面是提供一种可视化生成面向信号应用程序代码的装置,所述装置包括数据源,与数据源相互连接的数据持久化模块,以及与数据持久化模块相互连接的可视化引擎、语法管理器、代码解析引擎及代码生成引擎。 上述数据源用于为数据提供存储,形式可以为数据库或数据文件;所述数据持久化模块用于提供对数据源的存取;所述可视化引擎负责将所获取的数据转换为图形的方式展示在界面上;所述语法管理器用于管理装置中已经保存的各种文本代码语言的语法规则;所述代码解析引擎用于在运行时根据获取的文本进行,从语法管理器中提取指定的语言语法规则进行分析; 所述代码生成引擎用于将可视化数据对象根据规则转换为符合指定语言的代码文本。 本专利技术综合利用STD信号概念、XML技术、可视化建模技术、实时解析技术等不同的元素,具有很多优点:I】标准化。本专利技术的各种基础数据对象(测试资源、信号等)均来源于标准,当目标语言选择为XML时,最终输出的测试描述代码也符合IEEE Std 1671.1 Test Descript1n标准;2】可视化。所有基础数据模型均可以图形化的方式显示,测试描述可通过在界面上拖拽控件的可视化方式进行编辑,直观高效;3】可扩展。语法管理器、代码生成引擎等核心部件均面向接口开发,因此开发者可以根据实际需要进行二次开发本文档来自技高网...
【技术保护点】
一种可视化生成面向信号应用程序代码的方法,其特征在于,包括如下步骤:1)选择目标代码语言,根据所选择的语言加载相应的语法规则;2)基于ATML和STD标准,初始化测试资源和信号函数等数据对象;3)获取测试描述数据对象,根据所选的目标语言,生成相应的代码框架,以及相应的设计界面;4)获取测试资源以及STD等数据对象,插入测试描述设计界面,同时在代将对应的代码插入代码框架;5)在设计界面修改测试描述或修改测试描述代码,同时同步修改另一个页面的测试描述内容;6)保存最终测试描述代码。
【技术特征摘要】
【专利技术属性】
技术研发人员:郭恩全,陈晓明,
申请(专利权)人:陕西海泰电子有限责任公司,
类型:发明
国别省市:陕西;61
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。