一种视频会议系统的虚拟终端自动化测试方法转让专利

申请号 : CN201811533738.9

文献号 : CN109660427B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 黄坤欣张艺展陈锦辉

申请人 : 福建星网智慧科技股份有限公司

摘要 :

本发明提供一种视频会议系统的虚拟终端自动化测试方法,包括将虚拟终端的待测试功能封装成基于python的自定义库;通过RF自动化测试框架调用基于python的自定义库和自身的Selenium Library第三方库,并将待测试功能和页面自动化控制操作均封装成一个个RF关键字;在执行测试用例时,通过调用RF自动化测试框架中的RF关键字来实现MCU会议系统的自动化测试。本发明优点:能够根据测试需求实现视频会议系统的成员邀请入会、成员挂断、移除成员等基本功能的自动化测试;同时能够实现大批量成员入会等实际终端环境较难满足的测试环境,可节约测试成本,提高测试效率。

权利要求 :

1.一种视频会议系统的虚拟终端自动化测试方法,其特征在于:所述方法需提供一MCU会议系统、一PBX注册服务器以及至少一虚拟终端;所述MCU会议系统与PBX注册服务器交互,各所述虚拟终端均分别与所述MCU会议系统和PBX注册服务器交互,所述MCU会议系统连接有一web客户端;

所述方法包括如下步骤:

步骤S1、将虚拟终端的待测试功能封装成基于python的自定义库;

步骤S2、通过RF自动化测试框架调用基于python的自定义库和自身的Selenium Library第三方库,并将待测试功能和页面自动化控制操作均封装成一个个RF关键字;

步骤S3、在执行测试用例时,通过调用RF自动化测试框架中的RF关键字来实现MCU会议系统的自动化测试;

在进行单个虚拟终端自动化测试时,所述步骤S3具体包括:

步骤S311、在执行测试用例时,先开启虚拟终端的消息监控与控制模块,并初始化虚拟终端,然后通过调用RF自动化测试框架的自定义库中用于注册的RF关键字,并根据用于注册的RF关键字对虚拟终端进行自动化注册;

步骤S312、通过调用RF自动化测试框架的自定义库中用于等待虚拟终端注册完毕的RF关键字,并根据用于等待虚拟终端注册完毕的RF关键字进行注册等待;同时,在注册成功后,记录虚拟终端的注册状态;

步骤S313、MCU会议系统的客户端通过调用基于Selenium Library第三方库封装的用于会控平台登陆的RF关键字,并根据用于会控平台登陆的RF关键字执行会控平台的自动化登陆;

步骤S314、在登录会议控制界面后,通过调用基于Selenium Library第三方库封装的用于创建会议的RF关键字,并根据用于创建会议的RF关键字进行自动化创建会议;

步骤S315、会议创建成功后,在MCU会议系统与虚拟终端之间通过调用RF自动化测试框架的自定义库中用于基本功能测试的RF关键字,并根据用于基本功能测试的RF关键字对基本功能进行自动化测试;同时,记录虚拟终端的测试状态;

步骤S316、测试结束后,输出测试log和测试报告。

2.根据权利要求1所述的一种视频会议系统的虚拟终端自动化测试方法,其特征在于:所述虚拟终端包含SIP协议栈层、媒体处理层、RTP模块以及消息监控与控制模块;

所述SIP协议栈层用于提供SIP协议的支持;

所述媒体处理层用于接收和发送媒体流,并实现媒体流的采集、编码和解码;

所述RTP模块用于支持实时媒体流传输;

所述消息监控与控制模块用于初始化虚拟终端,监控虚拟终端接收到的信息,在虚拟终端出现响应变化时记录虚拟终端的状态;还用于通过调用SIP协议栈层实现对虚拟终端的控制功能。

3.根据权利要求1所述的一种视频会议系统的虚拟终端自动化测试方法,其特征在于:在所述步骤S315中,所述基本功能包括邀请成员入会、成员挂断、移除成员、主动挂断成员、发起辅流或者获取虚拟终端状态。

4.根据权利要求2所述的一种视频会议系统的虚拟终端自动化测试方法,其特征在于:在进行虚拟终端批量自动化测试时,所述步骤S3具体包括:

步骤S321、在执行测试用例时,先开启各虚拟终端的消息监控与控制模块,并初始化各虚拟终端;然后通过调用RF自动化测试框架的自定义库中用于循环和用于注册的RF关键字,输入虚拟终端成员起始号码以及成员个数,并根据用于循环和用于注册的RF关键字对各虚拟终端进行自动化注册;

步骤S322、通过调用RF自动化测试框架的自定义库中用于等待所有虚拟终端注册完毕的RF关键字,并根据用于等待所有虚拟终端注册完毕的RF关键字进行注册等待;同时,在所有虚拟终端均注册成功后,记录各虚拟终端的注册状态;

步骤S323、MCU会议系统的客户端通过调用基于Selenium Library第三方库封装的用于会控平台登陆的RF关键字,并根据用于会控平台登陆的RF关键字执行会控平台的自动化登陆;

步骤S324、在登录会议控制界面后,通过调用基于Selenium Library第三方库封装的用于创建会议的RF关键字,并根据用于创建会议的RF关键字进行自动化创建会议;

步骤S325、会议创建成功后,在MCU会议系统与各虚拟终端之间通过调用RF自动化测试框架的自定义库中用于基本功能测试的RF关键字,并根据用于基本功能测试的RF关键字对基本功能进行自动化批量测试;同时,记录各虚拟终端的测试状态;

步骤S326、测试结束后,输出测试log和测试报告。

5.根据权利要求4所述的一种视频会议系统的虚拟终端自动化测试方法,其特征在于:在所述步骤S325中,所述基本功能包括邀请批量成员入会、批量成员挂断、批量移除成员、主动挂断批量成员或者批量获取各虚拟终端状态。

说明书 :

一种视频会议系统的虚拟终端自动化测试方法

技术领域

[0001] 本发明涉及计算机通信领域,特别涉及一种视频会议系统的虚拟终端自动化测试方法。

背景技术

[0002] 近几年来,视频会议系统的市场规模正在逐年扩大,视频会议系统的使用也将进一步向各行各业渗透,因此,关于视频会议系统的测试方法是测试领域的研究重点。视频会议无论是在功能还是性能等各方面的测试,对于测试终端的要求一直都是测试的痛点。传统方式下,人们在测试视频会议系统时,仅仅是使用真实的视频会议终端进行呼叫测试,通过是否能够正确地接通呼叫来测试呼叫处理协议的正确与否。随着一些IP电话客户端(如Linphone)的出现,虽然能够一定程度上作为模拟终端进行测试,但测试人员仍需手动操作这些软件,对于视频会议系统的自动化测试仍有较大局限性。也就是说,现有技术在对视频会议系统进行测试时,主要存在有以下缺陷:
[0003] 1、测试人员在进行测试时,往往是通过多个真实终端呼叫视频会议系统的核心设备MCU(多点控制单元)来判断该核心设备的并发处理能力。这种方法虽然简单,但代价却比较高昂;因为当终端数达到几十或者上百时,使用多个实际终端进行呼叫就显得不切实际,也较大程度地限制了压力、稳定性等测试方法。
[0004] 2、测试人员需要手动进入视频会议系统的web客户端进行操作,当软件版本更迭频繁、测试量较大时,需要耗费大量的人力资源。

发明内容

[0005] 本发明要解决的技术问题,在于提供一种视频会议系统的虚拟终端自动化测试方法,通过该测试方法能够实现视频会议系统的成员邀请入会、成员挂断、移除成员等基本功能的自动化测试;同时,能够实现大批量成员入会等实际终端环境较难满足的测试环境。
[0006] 本发明是这样实现的:一种视频会议系统的虚拟终端自动化测试方法,所述方法需提供一MCU会议系统、一PBX注册服务器以及至少一虚拟终端;所述MCU会议系统与PBX注册服务器交互,各所述虚拟终端均分别与所述MCU会议系统和PBX注册服务器交互,所述MCU会议系统连接有一web客户端;
[0007] 所述方法包括如下步骤:
[0008] 步骤S1、将虚拟终端的待测试功能封装成基于python的自定义库;
[0009] 步骤S2、通过RF自动化测试框架调用基于python的自定义库和自身的Selenium Library第三方库,并将待测试功能和页面自动化控制操作均封装成一个个RF关键字;
[0010] 步骤S3、在执行测试用例时,通过调用RF自动化测试框架中的RF关键字来实现MCU会议系统的自动化测试。
[0011] 进一步地,所述虚拟终端包含SIP协议栈层、媒体处理层、RTP模块以及消息监控与控制模块;
[0012] 所述SIP协议栈层用于提供SIP协议的支持;
[0013] 所述媒体处理层用于接收和发送媒体流,并实现媒体流的采集、编码和解码;
[0014] 所述RTP模块用于支持实时媒体流传输;
[0015] 所述消息监控与控制模块用于初始化虚拟终端,监控虚拟终端接收到的信息,在虚拟终端出现响应变化时记录虚拟终端的状态;还用于通过调用SIP协议栈层实现对虚拟终端的控制功能。
[0016] 进一步地,在进行单个虚拟终端自动化测试时,所述步骤S3具体包括:
[0017] 步骤S311、在执行测试用例时,先开启虚拟终端的消息监控与控制模块,并初始化虚拟终端,然后通过调用RF自动化测试框架的自定义库中用于注册的RF关键字,并根据用于注册的RF关键字对虚拟终端进行自动化注册;
[0018] 步骤S312、通过调用RF自动化测试框架的自定义库中用于等待虚拟终端注册完毕的RF关键字,并根据用于等待虚拟终端注册完毕的RF关键字进行注册等待;同时,在注册成功后,记录虚拟终端的注册状态;
[0019] 步骤S313、MCU会议系统的客户端通过调用基于Selenium Library第三方库封装的用于会控平台登陆的RF关键字,并根据用于会控平台登陆的RF关键字执行会控平台的自动化登陆;
[0020] 步骤S314、在登录会议控制界面后,通过调用基于Selenium Library第三方库封装的用于创建会议的RF关键字,并根据用于创建会议的RF关键字进行自动化创建会议;
[0021] 步骤S315、会议创建成功后,在MCU会议系统与虚拟终端之间通过调用RF自动化测试框架的自定义库中用于基本功能测试的RF关键字,并根据用于基本功能测试的RF关键字对基本功能进行自动化测试;同时,记录虚拟终端的测试状态;
[0022] 步骤S316、测试结束后,输出测试log和测试报告。
[0023] 进一步地,在所述步骤S315中,所述基本功能包括邀请成员入会、成员挂断、移除成员、主动挂断成员、发起辅流或者获取虚拟终端状态。
[0024] 进一步地,在进行虚拟终端批量自动化测试时,所述步骤S3具体包括:
[0025] 步骤S321、在执行测试用例时,先开启各虚拟终端的消息监控与控制模块,并初始化各虚拟终端;然后通过调用RF自动化测试框架的自定义库中用于循环和用于注册的RF关键字,输入虚拟终端成员起始号码以及成员个数,并根据用于循环和用于注册的RF关键字对各虚拟终端进行自动化注册;
[0026] 步骤S322、通过调用RF自动化测试框架的自定义库中用于等待所有虚拟终端注册完毕的RF关键字,并根据用于等待所有虚拟终端注册完毕的RF关键字进行注册等待;同时,在所有虚拟终端均注册成功后,记录各虚拟终端的注册状态;
[0027] 步骤S323、MCU会议系统的客户端通过调用基于Selenium Library第三方库封装的用于会控平台登陆的RF关键字,并根据用于会控平台登陆的RF关键字执行会控平台的自动化登陆;
[0028] 步骤S324、在登录会议控制界面后,通过调用基于Selenium Library第三方库封装的用于创建会议的RF关键字,并根据用于创建会议的RF关键字进行自动化创建会议;
[0029] 步骤S325、会议创建成功后,在MCU会议系统与各虚拟终端之间通过调用RF自动化测试框架的自定义库中用于基本功能测试的RF关键字,并根据用于基本功能测试的RF关键字对基本功能进行自动化批量测试;同时,记录各虚拟终端的测试状态;
[0030] 步骤S326、测试结束后,输出测试log和测试报告。
[0031] 进一步地,在所述步骤S325中,所述基本功能包括邀请批量成员入会、批量成员挂断、批量移除成员、主动挂断批量成员或者批量获取各虚拟终端状态。
[0032] 本发明具有如下优点:能够根据测试需求实现视频会议系统的成员邀请入会、成员挂断、移除成员等基本功能的自动化测试;同时,能够实现大批量成员入会等实际终端环境较难满足的测试环境,能够较大程度代替实际终端配合视频会议系统进行测试,整个测试过程完全自动化,在测试结束后自动生成测试结果和测试报告,不仅可大大节约测试成本,而且可以提高测试效率。

附图说明

[0033] 下面参照附图结合实施例对本发明作进一步的说明。
[0034] 图1为本发明一种视频会议系统的虚拟终端自动化测试方法使用的硬件原理框图。
[0035] 图2为本发明一种视频会议系统的虚拟终端自动化测试方法的执行流程框图。
[0036] 图3为本发明中RF关键字封装的示意图。
[0037] 图4为本发明中虚拟终端自顶向下的结构图。

具体实施方式

[0038] 请重点参照图1至图4所示,一种视频会议系统的虚拟终端自动化测试方法,所述方法需提供一MCU会议系统、一PBX注册服务器以及至少一虚拟终端;所述MCU会议系统与PBX注册服务器交互,各所述虚拟终端均分别与所述MCU会议系统和PBX注册服务器交互,所述MCU会议系统连接有一web客户端;在具体实施时,用户可以通过web客户端访问MCU会议系统进行会议初始化配置、创建会议、邀请成员等页面配置操作;MCU会议系统与PBX注册服务器之间通过SIP信令交互;虚拟终端与PBX注册服务器之间需要先通过SIP信令交互,待媒体协商过后,再向MCU会议系统发送流媒体,同样的,MCU会议系统在对媒体流进行识别和解码后,再向各虚拟终端发送视频画面和语音。
[0039] 本发明的自动化测试方法是基于RobotFramework(简称RF)自动化测试框架来完成的,该自动化测试框架具有良好的可扩展性,支持关键字驱动。
[0040] 所述方法包括如下步骤:
[0041] 步骤S1、将虚拟终端的待测试功能封装成基于python的自定义库,具体可以使用python语言来实现虚拟终端相关的自定义Library,通过在RF自动化测试框架中调用这些自定义方法,即可实现对虚拟终端的控制及状态的获取;
[0042] 步骤S2、通过RF自动化测试框架分别调用基于python的虚拟终端自定义库和RF自动化测试框架自身的SeleniumLibrary第三方库,将待测试功能和web客户端的页面自动化控制操作均封装成一个个RF关键字(如图3所示),在进行封装时,RF关键字使用RF定义的语言进行封装;在具体实施时,只需要在测试用例中调用基于python的自定义库和Selenium Library第三方库这两部分的RF关键字,就可以实现会议系统的自动化测试。
[0043] 步骤S3、在执行测试用例时,通过调用RF自动化测试框架中的RF关键字来实现MCU会议系统的自动化测试。
[0044] 如图4所示,所述虚拟终端包含SIP协议栈层、媒体处理层、RTP模块以及消息监控与控制模块;其中,SIP协议栈层、媒体处理层和RTP模块主要采用C语言来编写;消息监控与控制模块主要采用python语言来实现。
[0045] 所述SIP协议栈层用于提供SIP协议的支持;SIP协议栈层为SIP呼叫基本流程的支持,MCU视频会议系统通常采用SIP协议信令,虚拟终端需实现对SIP协议的支持,这也是虚拟终端与MCU视频会议系统建立通信连接的必要条件。在本发明的虚拟终端中,SIP协议的支持包含用户注册、通话建立、通话结束等功能,支持MCU视频会议系统的大多数功能测试,该部分协议基于RFC3261规范。
[0046] 所述媒体处理层用于接收和发送媒体流,并实现媒体流(包括语音和视频)的采集、编码和解码;虚拟终端在模拟多个真实终端时,在SIP通话建立之后,可以并发地向MCU视频会议系统发送基于RTP协议的音视频数据流,同时,虚拟终端接收到MCU视频会议系统解码后的音视频数据流后,能够对收到的数据流进行相应的编解码,从而对音视频的正确性做出判断。
[0047] 所述RTP模块用于支持实时媒体流传输;虚拟终端所发送的流媒体数据都是承载在RTP数据包中的,虚拟终端根据与MCU视频会议系统所完成的媒体协商结果生成相应的音视频数据,并向MCU视频会议系统发送符合RTP协议规范的音视频码流,从而实现音视频码流的同步传输。
[0048] 所述消息监控与控制模块用于初始化虚拟终端,监控虚拟终端接收到的信息,包括来电响应、接通响应、挂机响应等;在虚拟终端出现响应变化时记录虚拟终端的状态(如响铃、通话状态等);还用于通过调用SIP协议栈层实现对虚拟终端的控制功能,主要是通过基于python的ctypes内建模块,调用SIP协议栈层实现虚拟终端的注册、主动挂断、发送辅流等功能。
[0049] 本发明在进行单个虚拟终端自动化测试时,所述步骤S3具体包括:
[0050] 步骤S311、在执行测试用例时,先开启虚拟终端的消息监控与控制模块,并初始化虚拟终端,然后通过调用RF自动化测试框架的自定义库中用于注册的RF关键字,并根据用于注册的RF关键字对虚拟终端进行自动化注册;
[0051] 步骤S312、通过调用RF自动化测试框架的自定义库中用于等待虚拟终端注册完毕的RF关键字,并根据用于等待虚拟终端注册完毕的RF关键字进行注册等待;同时,在注册成功后,记录虚拟终端的注册状态;
[0052] 步骤S313、MCU会议系统的客户端通过调用基于Selenium Library第三方库封装的用于会控平台登陆的RF关键字,并根据用于会控平台登陆的RF关键字执行会控平台的自动化登陆;
[0053] 步骤S314、在登录会议控制界面后,通过调用基于Selenium Library第三方库封装的用于创建会议的RF关键字,并根据用于创建会议的RF关键字进行自动化创建会议;
[0054] 步骤S315、会议创建成功后,在MCU会议系统与虚拟终端之间通过调用RF自动化测试框架的自定义库中用于基本功能测试的RF关键字,并根据用于基本功能测试的RF关键字对基本功能进行自动化测试;同时,记录虚拟终端的测试状态;
[0055] 步骤S316、测试结束后,输出测试log和测试报告。
[0056] 在所述步骤S315中,所述基本功能包括邀请成员入会、成员挂断、移除成员、主动挂断成员、发起辅流或者获取虚拟终端状态。
[0057] 本发明在进行虚拟终端批量自动化测试时,所述步骤S3具体包括:
[0058] 步骤S321、在执行测试用例时,先开启各虚拟终端的消息监控与控制模块,并初始化各虚拟终端;然后通过调用RF自动化测试框架的自定义库中用于循环和用于注册的RF关键字,输入虚拟终端成员起始号码以及成员个数,并根据用于循环和用于注册的RF关键字对各虚拟终端进行自动化注册;
[0059] 步骤S322、通过调用RF自动化测试框架的自定义库中用于等待所有虚拟终端注册完毕的RF关键字,并根据用于等待所有虚拟终端注册完毕的RF关键字进行注册等待;同时,在所有虚拟终端均注册成功后,记录各虚拟终端的注册状态;
[0060] 步骤S323、MCU会议系统的客户端通过调用基于Selenium Library第三方库封装的用于会控平台登陆的RF关键字,并根据用于会控平台登陆的RF关键字执行会控平台的自动化登陆;
[0061] 步骤S324、在登录会议控制界面后,通过调用基于Selenium Library第三方库封装的用于创建会议的RF关键字,并根据用于创建会议的RF关键字进行自动化创建会议;
[0062] 步骤S325、会议创建成功后,在MCU会议系统与各虚拟终端之间通过调用RF自动化测试框架的自定义库中用于基本功能测试的RF关键字,并根据用于基本功能测试的RF关键字对基本功能进行自动化批量测试;同时,记录各虚拟终端的测试状态;
[0063] 步骤S326、测试结束后,输出测试log和测试报告。
[0064] 在所述步骤S325中,所述基本功能包括邀请批量成员入会、批量成员挂断、批量移除成员、主动挂断批量成员或者批量获取各虚拟终端状态。
[0065] 下面以MCU视频会议系统邀请单个虚拟终端入会这一基本的自动化功能测试来做详细说明:
[0066] 前置条件:在运行自动化测试用例的同时,开启消息监控与控制模块,初始化虚拟终端。调用RF自动化测试框架的自定义库中用于注册虚拟终端的RF关键字,注册一个虚拟终端,如注册的号码为22201;调用RF自动化测试框架的自定义库中用于等待虚拟终端注册完毕的RF关键字,且在等待时间(如1.5秒)内,如果注册成功,则将虚拟终端的注册状态设置为“True”,并往下继续进行;如果注册失败,则将虚拟终端的注册状态设置为“FAIL”,并提示用例测试失败,结束测试流程。
[0067] 对于MCU视频会议系统的客户端,通过调用基于RF自动化测试框架Selenium Library第三方库封装的打开会控平台、输入账号、密码、点击登陆等RF关键字,并依次调用这些RF关键字来实现会控平台的自动化登陆,从而进入到会议控制界面。
[0068] 调用RF自动化测试框架的自定义库中的点击创建会议、编辑参会人员、点击创建按钮等RF关键字,并依次调用这些RF关键字来实现自动化创建视频会议。当视频会议创建后,MCU视频会议系统主动向虚拟终端发起邀请(sip invite),虚拟终端进行响应(回复100tryng和180ring),消息监控与控制模块在捕捉到这一响应后,将虚拟终端的状态设置为“on ring”响铃状态。
[0069] 虚拟终端发出接通响应(200OK),消息监控与控制模块同样捕捉到这一响应后,将该虚拟终端的状态设置为“on call”通话中状态,此时,MCU视频会议系统和虚拟终端媒体协商成功,虚拟终端解析协商中附带的SDP消息体,并提取和保存其中的音视频传输端口,媒体处理层向MCU视频会议系统的音视频端口发送符合RTP协议规范的音视频码流,至此,视频通话建立,虚拟终端入会成功。
[0070] 调用RF自动化测试框架的自定义库中的用于获取当前出席列表的RF关键字,获取该虚拟终端成员的入会状态,若该虚拟终端正常入会,则将该成员显示在出席列表中,测试结果为PASS;若未正常入会,则将该成员显示在未出席列表中,测试结果显示为FAIL。测试结束后,输出测试log和测试报告。类似地,MCU视频会议系统的成员挂断、移除成员等基本功能,均采用以上的方式进行
[0071] 下面以MCU视频会议系统批量邀请多个虚拟终端入会这一基本的自动化功能测试来做详细说明:
[0072] 在运行自动化用例的同时,开启各虚拟终端的消息监控与控制模块,初始化各虚拟终端;调用RF自动化测试框架的自定义库中用于循环(For循环)和用于注册的RF关键字,输入虚拟终端成员起始号码(如10001)以及成员个数(如200个),并根据用于循环和用于注册的RF关键字对各虚拟终端进行自动化注册;
[0073] 调用RF自动化测试框架的自定义库中用于等待所有虚拟终端注册完毕的RF关键字,具体可以调用“等待所有用户注册成功”接口的RF关键字,该“等待所有用户注册成功”接口可以通过python循环实现,并根据用于等待所有虚拟终端注册完毕的RF关键字进行注册等待,且在等待时间(如30秒)内,如果所有的虚拟终端均注册成功,则将各虚拟终端的注册状态设置为“True”,并往下继续进行;如果有虚拟终端注册失败,则将该虚拟终端的注册状态设置为“FAIL”,并提示用例测试失败,结束测试流程。
[0074] 对于MCU视频会议系统的客户端,通过调用基于RF自动化测试框架Selenium Library第三方库封装的打开会控平台、输入账号、密码、点击登陆等RF关键字,并依次调用这些RF关键字来实现会控平台的自动化登陆。在登陆成功后,通过调用RF自动化测试框架的自定义库中的用于页面自动化配置的RF关键字,并通过这些RF关键字自动化进行会议方数、会议主题、会议布局等页面配置,实现视频会议的创建,如配置入会成员号码为1001~1200共200个成员。
[0075] 当视频会议创建成功时,MCU视频会议系统并发地向200个虚拟终端成员发送sip INVITE信令。各虚拟终端收到后响应(回复100tryng和180ring),消息监控与控制模块捕捉到该响应时,将各虚拟终端的状态设置为“on ring”响铃状态。
[0076] 各虚拟终端发出接通响应(200OK),消息监控与控制模块同样捕捉到这一响应后,将各虚拟终端的状态设置为“on call”通话中状态,MCU视频会议系统和各虚拟终端媒体协商成功,各虚拟终端解析协商中附带的SDP消息体,并提取和保存其中的音视频传输端口,媒体处理层向MCU视频会议系统的音视频端口发送符合RTP协议规范的音视频码流,至此,视频通话建立,各虚拟终端入会成功。以上多虚拟终端的消息同步方式是基于python多线程thread模块实现。
[0077] 调用RF自动化测试框架的自定义库中的用于获取各虚拟终端成员的入会状态的RF关键字,若如果虚拟终端成员1001~1200均显示在出席列表中,则测试结果为PASS;若有虚拟终端成员未正常入会,则将该部分成员显示在未出席列表中,测试结果显示为FAIL,输出未出席成员的号码列表,以方便后续进行故障排查。测试结束后,输出测试log和测试报告。
[0078] 类似地,成员的大批量挂断操作等测试,也采用以上方式进行,如调用“挂断成员”关键字,使各虚拟终端依次发送挂断(BYE)指令,中断各虚拟终端的视频流,并将成员状态设置为“registered”。
[0079] 综上所述,本发明具有如下优点:能够根据测试需求实现视频会议系统的成员邀请入会、成员挂断、移除成员等基本功能的自动化测试;同时,能够实现大批量成员入会等实际终端环境较难满足的测试环境,能够较大程度代替实际终端配合视频会议系统进行测试,整个测试过程完全自动化,在测试结束后自动生成测试结果和测试报告,不仅可大大节约测试成本,而且可以提高测试效率。
[0080] 虽然以上描述了本发明的具体实施方式,但是熟悉本技术领域的技术人员应当理解,我们所描述的具体的实施例只是说明性的,而不是用于对本发明的范围的限定,熟悉本领域的技术人员在依照本发明的精神所作的等效的修饰以及变化,都应当涵盖在本发明的权利要求所保护的范围内。