首页 >> 通信测试 >> 技术 >> 正文
基于白盒测试的Parlay API接口测试方法设计
2007年9月24日 09:43    泰尔网    评论()    
作 者:现代电信科技 王小雨 张昀 陈雷

    第二个新的操作是通知应用实体的离去,当实体离开会议和监控实体提前申请离开,应由Parlay网关调用。

    ·IpSubConfCall提供管理子会议的操作。子会议又称为一个会议中所有Legs的子集,所以仅在同一子会议的Legs才能相互通信。它继承了IpMultiMediaCall,并提供几个新的方法。其中一个方法是分拆子会议,在这种情况下,子会议中的一些Legs移往新建的子会议。相应的,也提供了合并子会议的方法,在这种情况下,该子会议中的所有Legs移往一已经存在的子会议,且释放空子会议。该接口也提供了将呼叫Leg移往另一子会议的方法。通过IpSubConfCall接口,可以改变多媒体(子)会议策略。

    ·IpAppSubConfCall接口允许通知应用关于子会议的事件。它继承了IpAppMultiMediaCall接口,并引入了两个新的操作,都是用来调用去通知应用网络所作的请求。一个方法用于提供主席请求,另一个提供坐席请求。

    整个测试系统由四部分组成(如图2所示):

    ·模拟Parlay网关模块:主要实现Parlay网关的功能;

    ·测试用例运行模块:主要实现对测试用例的加载、运行;

    ·测试结果保存模块:保存测试用例测试的结果,并可查询和对比;

    ·辅助工具模块:对测试提供辅助工具。

    其中,测试用例运行模块和模拟Parlay网管模块在测试平台中起关键作用,可以通过测试用例运行模块编写测试用例。此模块可以设计成并行执行,每次可以加载多个测试用例同时进行。特别是在验证大话务量的情况下,应用服务器在ParlayAPI传递中是否能够保证消息、参数以及调用顺序上的正确性。

    图2ParlayAPI测试方案的整体架构

    模拟Parlay网关模块对外提供两种接口:一种是基于CORBA的远程调用接口,该接口主要用于同Parlay应用服务器进行正常的ParlayAPI交互;另一种是向测试用例提供的Java本地API接口,测试用例通过使用此接口通知模拟网关应该向应用服务器发送哪个ParlayAPI调用。因此,该接口需要为测试用例提供的功能,包括创建各种IP侧接口实例,设定Parlay方法的各个参数,指定应该向Parlay应用服务器发起哪一个方法调用等。实际上,模拟Parlay网关模块的这种本地API接口就是提供给测试用例使用的控制接口,测试用例通过该接口来控制模拟Parlay网关模块完成CORBA对象的创建和Parlay方法的封装及调用工作,而测试过程中的呼叫状态信息主要由测试用例自身保存和更改。

    四、基于白盒测试的测试用例的实现

    在此测试系统中,每个测试用例应分为两个部分。①网关侧测试集:主要功能是测试用例运行时,向Parlay应用服务器发送一个模拟呼叫清求,然后配合业务逻辑执行测试操作。②业务侧测试集:主要是接收由Parlay应用服务器转发来的网关侧呼叫请求,然后配合网关部分执行测试操作,并将测试结果保存到相应的文件中。

    网关侧和业务侧的测试集分别在测试平台和Parlay应该用服务器中运行,测试用例需要分别单独编写。其中,业务侧的测试集作为业务的一种,网关侧的测试集需要调用测试系统中的ITestInstance接口。测试用例的相关信息在测试用例脚本文件中提供。这些相关信息包括:①测试用例的名称,用来惟一表示测试用例。②网关侧测试类的类名,每个测试用例都对应着一个网关侧的Java类,测试平台对测试用例的加载实际上就是创建并加载相应的Java类,测试用例的执行就是执行该Java类的相应接口方法。③业务侧测试类名。每个测试用例都要有对业务的支持,因此需要在脚本文件中为每个测试用例指定相应的业务名称。④测试用例所使用的呼叫类型,该呼叫类型指定测试用例所对应的上层业务是基于何种呼叫类型。

    对于ParlayAPI的测试方案,我们采取白盒测试的方法进行测试。

    白盒测试应用于本测试系统中,主要是对业务逻辑调用的考察,因此,我们必须制订好测试的实施步骤:

    ·测试计划阶段:根据业务说明书,制定测试进度;

    ·测试设计阶段:依据业务的程序没计说明书,按照一定规范化的方法进行软件结构划分和测试用例的设计;

    ·测试执行阶段:加载测试用例,得到测试结果;

    ·测试总结阶段:对比测试的结果和代码的预期结果,分析错误原因,找到并解决错误。

    由于本测试操作主要是通过API的调用情况和调用顺序来体现的,这就要求在每次测试操作中,测试用例需要将业务侧对网关侧以及网侧对业务侧的APl调用信息,API所继承的类名、方法名等保存到相应的测试结果文件中,最后通过比较相关的测试结果文件就能获知测试用的执行结果是否正确。在整个测试过程中,对ParlayAPI的调用情况可以分为两类:业务侧和网络侧调用情况。每种情况又可以分为两类:主动调用和被动调用。这四种情况是对应的,业务侧的主动调用和网关侧的被动调用情况对应,网关侧的主动调用情况和业务侧的被调用情况对应。

    基本操作流程:

    第一步:测试系统首先应根据配置文件中所设置的参数初始化CORBA环境,创建Parlay中各网络侧Manager接口类的CORBA对象以及测试结果保存模块所必须的CORBA对象,并将这些CORBA对象注册到CORBA命名服务中,以供应服务器和测试用例使用;

    第二步:测试系统从测试用例脚本文件中读取所有要执行的测试用例的相关信息,包括测试用例的名称、网管侧测试类名、业务侧测试类名以及呼叫类型等,并保存下来;

    第三步:加载测试用例到Parlay应用服务器中,然后激活;

    第四步:运行测试用例;

    第五步:在测试过程中,测试用例的业务侧测试类,测试平台的模拟Parlay网关模块把各自对ParlayAPI的调用情况,通过测试结果保存模块将相应的测试结果保存到结果文件中去;

    第六步:测试用例执行结束后,清除所有进程,去掉前面已经加载的测试用例。

    第七步:统计、分析测试结果,用户可通过各种文本文件比较工具比较测试结果文件内容的异同。

    对于Parlay应用服务器接口测试的需求,这种自动化测试平台具有如下优点:

    ·测试平台实现比较简单,本测试平台只需按照测试用例的要求生成相应的ParlayAPI调用,无需维护模拟呼叫的状态信息;

    ·测试用例编写灵活,模拟呼叫的状态信息以及各ParlayAPI方法的参数均由测试用例提供,只要测试用例的功能足够,即可支持真实业务的功能测试;

    ·测试操作的自动化。

    五、结语

    Parlay应用服务器可以提供不同抽象层次的业务开发接口、以便不同能力不同类型的业务开发者开发丰富多彩的业务,例如,可以提供基于CORBA的ParlayAPI接口、基于JAINSPA标准的JavaAPI接口、以及基于Javabeans的接口,基于XML、CPL、VoiceXML的接口等,业务开发者也可以根据业务的需要和自己的能力来选择合适的开发接口。

    业务的多样性给测试带来了很大的不便,购买大量设备建设模拟环境的确不是一个理想的测试方案,上述基于白盒的检测方法大大简化了模拟环境的配置,可以通过软件来模拟网络环境,考察API的调用情况。

[1]  [2]  [3]  [4]  编 辑:张翀
关键字搜索:测试  API  接口  
[ 本站暂时关闭评论 ]
 
  推 荐 新 闻
  技 术 动 态
  通 信 圈