公用对象请求代理程序体系结构接口自动测试方法和装置制造方法及图纸

技术编号:5138573 阅读:294 留言:0更新日期:2012-04-11 18:40
本发明专利技术公开了一种公用对象请求代理程序体系结构接口自动测试方法及装置,该方法包括:搜索目标语言类中的所有方法,并获取接口信息;生成测试用例;生成测试用例数据;调用动态调用接口,执行测试用例,将测试用例数据转化为客户端向服务端的调用请求;并记录服务端返回的操作响应结果。该装置包括搜索获取模块;测试用例生成模块,与所述搜索获取模块连接;测试用例数据模块,与测试用例生成模块连接;测试用例执行模块,与测试用例数据模块连接。因此,本发明专利技术每个接口的测试用例都可以自动生成,降低了编写用例的难度,同时提高了维护用例的效率;接口间的组合测试可以通过自由构建测试用例集来实现。

【技术实现步骤摘要】

本专利技术涉及自动化测试领域,尤其涉及一种公用对象请求代理程序体系结构 (Common Object Request Broker Architecture,简称 CORBA)接口 自动测试的方法和装置。
技术介绍
CORBA允许应用程序和其他的应用程序通讯,通讯的双方分别作为客户端和服务 端,通过实现对象请求代理(Object Request Broker,简称ORB)来激活双方的交互。客户 端和服务端分别承担了管理者和代理者的角色。管理者的任务是发送管理命令并接收代理 者发来的通知;代理者的任务是直接管理有关的管理对象,接收管理者发来的管理命令并 向管理者返回操作响应,也可在需要时主动向管理者发出通知。CORBA 接口由接口定义语言(Interface Definition Language,简称 IDL)定义, 它和使用的编程语言无关,通过实现对象请求代理来激活客户/服务器的交互。服务端负 责实现IDL定义的各种接口,客户端根据IDL编写客户端代码,向服务端对象发出接口调用 请求,服务端响应该请求并返回结果给客户端。因此,测试CORBA接口的前提就是要编写客 户端,向服务端发起接口调用请求,接收并处理服务端返回结果。如附图说明图1所示,现有的CORBA接口测试方法。图中,101是IDL编译器,102是IDL文 件定义单元,IDL编译器101负责将IDL文件定义单元102的IDL文件编译为单元103的 目标语言类。之后将单元103的类手工部署到目标语言工程中,然后逐个编写IDL文件定 义单元102中每个IDL文件定义接口的客户端调用代码和返回结果处理代码,即单元104。 单元103和单元104共同组成了 CORBA客户端。并且测试用例105往往需要手工编写,且 对客户端的依赖性较强。最后运行客户端,发起相关接口调用查看服务端返回的运行结果 是否与预期一致。这种测试方法的缺点是每个接口的调用代码和返回结果处理代码都要手工编 写,代码编写工作量较大;如果IDL定义频繁修改,IDL编译器就要随之进行编译为目标语 言类,并部署到工程中,CORBA接口的客户端调用代码需要同步频繁修改;每个接口的测试 用例多为手工编写,生成测试用例的效率不高;几个接口间的组合测试不易实现,每种组合 都需要手工编写流程代码。以上这些缺点也决定了传统的CORBA接口测试方法通用性不 高,客户端代码往往需要针对某一 IDL进行定制,影响了 CORBA接口的测试效率。
技术实现思路
本专利技术所要解决的技术问题是提供一种CORBA接口自动测试方法和装置,以解决 现有技术中手工编写接口调用代码繁复以及CORBA接口测试效率低等的问题。为了解决上述技术问题,本专利技术提供了一种CORBA接口自动测试方法,该方法包 括以下步骤接口定义语言定义的文件被编译为目标语言类后,搜索所述目标语言类中的所有4方法,并获取接口信息;根据所述获取的接口信息,生成测试用例;获取输入数据,生成所述测试用例对应的测试用例数据;调用公用对象请求代理程序体系结构的动态调用接口,执行所述测试用例,将所述测试用例数据转化为公用对象请求代理程序体系结构客户端向服务端的调用请求;并记 录服务端返回的操作响应结果。所述根据所述获取的接口信息,生成测试用例包括根据所述获取到的接口信息,构造参数树的根结点和各子结点,生成所述测试用 例。所述测试用例以所述参数树的方式在用户界面图形上呈现,以及测试用例通过 XML文件来保存。所述根据所述获取的接口信息,生成测试用例;和获取输入数据,生成所述测试用 例对应的测试用例数据之间还包括将多个测试用例构建成测试用例集。所述获取输入数据,生成所述测试用例对应的测试用例数据;和所述调用公用对 象请求代理程序体系结构的动态连接接口之间,还包括将所述测试用例集分解为单个的 测试用例。所述输入数据是通过所述参数树的叶子结点输入;或者所述输入数据是通过所述 XML文件中的元素标签对应的结点填入数据本专利技术还提供了一种CORBA接口自动测试装置,该装置包括搜索获取模块,用于在接口定义语言定义文件编译为目标语言类后,搜索所述目 标语言类中的所有方法,并获取接口信息;测试用例生成模块,与所述搜索获取模块连接,用于根据所述获取的接口信息,生 成测试用例;测试用例数据模块,与所述测试用例生成模块连接,用于获取输入数据,生成所述 测试用例对应的测试用例数据;测试用例执行模块,与所述测试用例数据模块连接,用于调用公用对象请求代理 程序体系结构的动态调用接口,执行所述测试用例,将所述测试用例数据转化为公用对象 请求代理程序体系结构客户端向服务端的调用;并记录服务端返回的操作响应结果。所述测试用例以所述参数树的方式在用户界面图形上呈现测试用例,或者所述测 试用例是通过XML文件来保存的。所述的公用对象请求代理程序体系结构接口自动测试装置,还包括测试用例集模块,与所述测试用例生成模块和测试用例执行模块连接,用于将多 个测试用例构建成测试用例集,并且将所述测试用例集分解为单个的测试用例。所述输入数据是通过所述参数树的叶子结点输入或者所述输入数据是通过所述 XML文件中的元素标签对应的结点填入数据。因此,本专利技术每个接口的测试用例都可以自动生成,降低了编写用例的难度,同时 提高了维护用例的效率;接口间的组合测试可以通过自由构建测试用例集来实现,大大提 高CORBA接口的测试效率,丰富了 CORBA接口自动化测试方法。图1为现有的CORBA接口测试方法;图2为本专利技术一种CORBA接口自动测试方法实施例1的流程图;图3为本专利技术构造各种参数类型结点的示意图; 图4为本专利技术一种CORBA接口自动测试方法实施例2的流程图。具体实施例方式下面通过附图和实施例,对本专利技术实施例的技术方案做进一步的详细描述。如图2所示,为本专利技术一种CORBA接口自动测试方法实施例1的流程图,包括以下 步骤步骤21,判断IDL定义的文件是否已经编译,如果是,执行步骤23 ;如果否,执行步 骤22,调用CORBA提供的IDL编译接口,将IDL定义文件自动编译为目标语言类;经过编译 后的IDL文件被映射为目标编程语言的一个形如XXXOperations的类,其中XXX为IDL接 口名,这个Operations类中包含了 IDL接口定义的类型、异常、属性、操作等在目标语言中 的映射。步骤23,搜索所述目标语言类如XXXOperations类中的所有方法(Method),并获 取接口信息,例如输入输出参数类型、返回参数类型、抛出异常类型等详细信息;这些信息 是测试用例的框架。步骤24,根据所述获取到的接口信息,构造参数树的根结点和各子结点,生成所述 测试用例(具体可参见图3所示,构造各种参数类型结点的示意图)步骤241,构建参数树的根结点,接口名作为树的根结点;步骤242,根据输入参数构造树的各子结点。第一层子结点是该接口的输入参数, 树结点记录输入参数名字和类型。如果输入参数是原子类型,可直接在该结点设置参数取 值;如果输入参数是IDL定义的复杂类型,那么会继续构造一棵以该复杂类型为根结点的 子树,如此递归将此复杂类型的数据结构清晰的呈现在该子树上(即构建子树后,该复杂 类型的数据依次构建叶子结点)。所有的叶子结点是设置本文档来自技高网
...

【技术保护点】
一种公用对象请求代理程序体系结构接口自动测试方法,其特征在于,包括:接口定义语言定义的文件被编译为目标语言类后,搜索所述目标语言类中的所有方法,并获取接口信息;根据所述获取的接口信息,生成测试用例;获取输入数据,生成所述测试用例对应的测试用例数据;调用公用对象请求代理程序体系结构的动态调用接口,执行所述测试用例,将所述测试用例数据转化为公用对象请求代理程序体系结构客户端向服务端的调用请求;并记录服务端返回的操作响应结果。

【技术特征摘要】
1.一种公用对象请求代理程序体系结构接口自动测试方法,其特征在于,包括接口定义语言定义的文件被编译为目标语言类后,搜索所述目标语言类中的所有方法,并获取接口信息;根据所述获取的接口信息,生成测试用例;获取输入数据,生成所述测试用例对应的测试用例数据;调用公用对象请求代理程序体系结构的动态调用接口,执行所述测试用例,将所述测 试用例数据转化为公用对象请求代理程序体系结构客户端向服务端的调用请求;并记录服 务端返回的操作响应结果。2.如权利要求1所述的公用对象请求代理程序体系结构接口自动测试方法,其特征在 于,所述根据所述获取的接口信息,生成测试用例包括根据所述获取到的接口信息,构造参数树的根结点和各子结点,生成所述测试用例。3.如权利要求2所述的公用对象请求代理程序体系结构接口自动测试方法,其特征在 于,所述测试用例以所述参数树的方式在用户界面图形上呈现,以及测试用例通过XML文 件来保存。4.如权利要求1所述的公用对象请求代理程序体系结构接口自动测试方法,其特征在 于,所述根据所述获取的接口信息,生成测试用例;和获取输入数据,生成所述测试用例对 应的测试用例数据之间还包括将多个测试用例构建成测试用例集。5.如权利要求4所述的公用对象请求代理程序体系结构接口自动测试方法,其特征在 于,所述获取输入数据,生成所述测试用例对应的测试用例数据;和所述调用公用对象请求 代理程序体系结构的动态连接接口之间,还包括将所述测试用例集分解为单个的测试用例。6.如权利要求3所述的公用对象请求代理程序体系结构接口自动测试方法,其特...

【专利技术属性】
技术研发人员:张利锟唐宝玉董嘉王磊
申请(专利权)人:中兴通讯股份有限公司
类型:发明
国别省市:94[中国|深圳]

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

1