一种在测试设备中对通信协议进行测试的方法和装置的制作方法

文档序号:7690126阅读:185来源:国知局
专利名称:一种在测试设备中对通信协议进行测试的方法和装置的制作方法
技术领域
本发明涉及通信协议的测试,特别涉及一种基于客户机/服务器架构 的通信协议测试方法及其装置。
背景技术
为了保证包含在通信产品中的有关路由、信令等通信协议的正确性
(correctness),互操作性(interoperability),可量须寸'f"生(scalability ),性 能(performance)等特性,在通信产品的研发(R&D)过程中,使用相 关的测试工具对通信协议进行测试是非常有必要的。
在现有的(比如目前正在使用的,或者正在市场上销售的)用于通 信协议测试的仪器或者系统中,对通信协议部分的测试过程非常复杂, 往往要求测试者对;故测试的通信协议本身非常熟悉和了解,否则根据现 有的测试方法,很难正确操作和使用这些设备完成测试,达到测试目的。 另外,随着通信技术和通信标准的发展,通信协议的种类越来越多,制 定通信协议标准的主体越来越多,比如目前具有广泛影响力的通信标准 组织有IETF( Internet Engineering Task Force )、 3GPP( The 3rd Generation Partnership Project )、 ITU-T等。随着通信技术的演进,针对同一种通信 协议,同 一个标准制定主体在不同时期往往会制定多个内容不同的演进 版本;而多个不同的标准制定主体,也会基于不同的目标需求针对同一 种通信协议作内容不同的扩展。比如,针对协议族RSVP ( Resource reservation Protocol), IETF OIF、 ITU-T以及IETF等多个标准组织就制 定了内容不同的扩展,如协议[RFC2205]、 [RFC2961]、 [RFC3209]、 [RFC3473]、 [RPC3474]、 [RFC3946]、 [OIF2003.249.09]、 [OIF2003.179.08] 以及[ITUG.7713.2/Y. 1704.2]等。在这样的现实条件下,即使要求某个测试人员熟悉某个技术领域的 一种通信协议的所有版本的内容,也往往近乎于苛刻,更何况熟练掌握 多个技术领域中多种协议的所有内容。
因此,人们发现,基于现有的测试设备或测试系统使用现有的测试 方法来完成通信产品的通信协议的测试工作,已经变得越来越困难,一 方面对测试人员的要求越来越高,另一方面测试效率却不断下降,从而 导致通信产品的测试成本和研发成本不断升高。
通常情况下,测试人员通过一个测试仪器对一个包含有通信协议的 通信产品进行测试或验证时,首先根据测试用例在测试仪器上定制一条 消息,接着由测试仪器将定制好的消息发送给与之相连接的被测试的通 信产品。

发明内容
本发明目的是为解决上述现有技术中的技术问题,而提出了一种在 测试设备中用于对通信协i义进行测试的方法。
为了叙述的方便,这里引入如下术语
被测试设备将被测试的包含有通信协议的通信产品统称为"被测 试设备";
测试消息定制之后由测试仪器发送给被测试设备的消息称为"测 试消息"。
测试消息的内容通常包括该测试消息的信头信息以及各个信息元 (IE, Information Element)信息;
定制测试消息的内容指根据不同的测试用例,对测试消息的信息 头以及各个信息元作具体赋值,所赋的数值,可能落在协议规定的取值 范围之内,也可能在协议规定的取值范围之外。
根据本发明的第一个方面,提供了 一种在测试设备中用于对通信协 议进行测试的方法,首先基于指定的测试消息的测试请求,根据预存的 测试消息的相关信息来生成所述测试消息的内容才莫々反,并提供给用户,所述测试消息的内容才莫^1至少包括测试消息的信头信息和测试消息的
信息元数据中部分或全部;然后接收用户反馈的对所述测试消息的信头 信息和测试消息的信息元数据中部分或全部的选择信息;最后基于所述 用户反馈的选择信息生成测试消息,发送给被测试设备。
根据本发明的第二个方面,提供了一种在测试设备中用于对通信协 议进行测试的装置,包括模板生成装置、接收装置、消息生成装置。其 中模板生成装置,用于基于指定的测试消息的测试请求,根据预存的测 试消息的相关信息来生成所述测试消息的内容模板,并提供给用户,所 述测试消息的内容模板至少包括测试消息的信头信息和测试消息的信 息元数据中部分或全部;接收装置,用于接收用户反馈的对所述测试消 息的信头信息和测试消息的信息元数据中部分或全部的选择信息;消息 生成装置,用于基于所述用户反馈的选择信息生成测试消息,发送给被 测试设备。
与现有技术相比,本发明具有以下优点
1. 在测试过程中,向测试人员提供测试消息的内容模板,测 试人员基于模板仅仅通过选择操作,就可以完成对测试消 息的定制,从而提供了一种全新的测试方法。
2. 如果基于测试人员基于模板的选择信息,提供一些诸如错 误提示等用户提示信息,则能更好的帮助测试人员实时掌 握测试过程,更快的发现测试过程中因人为因素而引入的 错误,从而提高测试效率。
3. 如果通过数据库的方式来保存和更新用于生成测试消息的 内容模板的相关信息,那么可以在测试过程中更快的将最 新的被测试协议版本的内容导入到测试系统中,而不影响 釆用该测试方法的测试系统的其他部分,有效降低了通信 协议的版本更新和测试"i殳备之间的耦合性,从而更快的跟 进新产品的研发,有效地帮助设备提供商缩短新产品的上 市时间。
4. 如果采用客户机/服务器架构,特别是浏览器客户机/web服务器架构实现本发明的测试方法,则该测试方法具有"支
持多用户、多被测试设备"的特性,从而有效提高通信测 试设备的测试效率,降低测试成本。 5. 根据本发明的测试方法,用户定制一些不同于通信协议规
定的测试消息对被测试设备进行测试,而且还可以任意指 定测试消息的源地址和/或目的地址,为用户提供了非常大 的测试自由度。


图1为根据本发明的一个具体实施方式
在测试设备中对通信协议进
行测试的方法流程图2为根据本发明的另一个具体实施方式
在测试设备中对通信协议 进行测试的方法流程图3为根据本发明的一个基于浏览器客户机/web服务器架构的具体 实施方式的消息序列图4为根据本发明的一个基于浏览器客户机/web服务器架构的具体 实施方式在浏览器客户机上呈现测试消息的内容模板供用户进行定制 操作的界面示意图5为根据本发明的另一个具体实施方式
同时支持多用户、多被测 试设备下的系统组成图6为根据本发明的一个具体实施方式
在测试设备中对通信协议进 行测试的装置框图7为根据本发明的一个具体实施方式
在测试设备中对通信协议进 行测试的装置中模板生成子装置的框图8为根据本发明的另一个具体实施方式
在测试设备中对通信协议 进行测试的装置框图。
具体实施例方式
以下通过几个具体实施例对本发明涉及的技术方案作进一步详细描述。
实施例一
图1为根椐本发明的一个具体实施方式
在测试设备中对通信协议进 行测试的方法流程图。在该流程图所示的测试方法中,为了对通信产品
中的通信协议进行测试,首先,在步骤S11中,测试设备基于指定的
测试消息的测试请求,根据预存的测试消息的相关信息来生成所述测试 消息的内容模板,并提供给用户,所述测试消息的内容模板至少包括测 试消息的信头信息和测试消息的信息元数据中部分或全部。
具体的,测试设备首先基于所述测试消息的测试请求,访问数据库
以查询所述测试消息的相关信息;然后,根据所查询获得的测试消息的 相关信息来生成所述测试消息的内容模板,并提供给用户。
其中,测试消息的测试请求,可以包括测试消息所属的通信协议名 称、协议版本、测试消息的消息名称等信息;预存的测试消息的相关信 息是指该测试消息在其所属的通信协议版本中对它的定义,具体可以包 括该测试消息的消息结构定义、所包含的各个信息元的定义,以及各个 信息元的取值范围等信息。测试消息的内容;t莫板,包括可供用户进行选 择以便完成对测试消息进行定制的格式,在此基础上可以方便地完成对 测试消息的定制。同时,允许用户对一个测试消息的全部信息元在内容 模板的基础上进行选择定制,也允许用户只对测试消息的其中一部分信 息元进行选l,定制,而用户没有进行定制选择的其它信息元在最终生成 测试消息时而取其缺省值。在具体操作上,除对各个信息元进行赋值之 外,用户还可以通过单选框等形式定制该测试消息不包含某些信息元, 而对应通信协议可能规定该测试消息强制必须包含该信息元;另外,用 户还可以定制在该测试消息中可以重复包含的信息元的重复次数。
然后,在步骤S12中,测试设备接收用户反馈的对所述测试消息的 信头信息和测试消息的信息元数据中部分或全部的选择信息;最后,在 步骤S13中,测试i殳备基于所述用户反馈的选择信息生成测试消息,发 送给被测试设备。作为该实施例的一个变型,如果采用客户机/服务器架构来实现上述 方法,那么,服务器首先接收来自所述客户机的用于指示对测试消息 进行测试的测试请求,然后,基于指定的测试消息的测试请求,根据预 存的测试消息的相关信息来生成所述测试消息的内容才莫板,并提供给用
户,随后,服务器执行上述的步骤S12和S13,为简明起见,在此不作赘述。
其中,上述消息具体指定了步骤Sll中测试消息的测试请求的具体 信息,可以包括测试消息所属的通信协议名称、协议版本、测试消息 的消息名称等信息。
上述客户机/服务器架构,具体的,可以通过浏览器客户机/web服务 器架构来实现。
实施例二
图2为根据本发明的另一个具体实施方式
在测试设备中对通信协议 进行测试的方法流程图。在该流程图所示的测试方法中,为了对通信产 品中的通信协议进行测试,首先,在步骤S21中,测试设备基于指定 的测试消息的测试请求,根据预存的测试消息的相关信息来生成所述 测试消息的内容模板,并提供给用户,所述测试消息的内容模板至少 包括测试消息的信头信息和测试消息的信息元数据中部分或全部。
具体的,测试设备首先基于所述测试消息的测试请求,访问数据库 以查询所述测试消息的相关信息;然后,根据所查询获得的测试消息的 相关信息来生成所述测试消息的内容模板,并提供给用户。
然后,在步骤S22中,测试设备接收用户反馈的对所述测试消息 的信头信息和测试消息的信息元数据中部分或全部的选择信息。
接着,在步骤S23中,测试设备再利用预存的测试消息的相关信 息对所述用户反^^貴的选择信息进行比较,以确定所述用户反馈的选择信 息是否正确。
其中,通过对用户反馈的选择信息与预存的测试消息的相关信息的比较,可以确定用户反馈的选择信息是否正确,即是否符合测试消息在 它所属的通信协议中的定义。
如果用户反馈的选择信息错误,则在步骤S24中,测试设备生成用
户提示信息以提供给用户。
其中,测试设备可以根据所述比较过程的比较结果(比如,用户 对某个信息元的选择超出了通信协议中定义的该信息元的合法取值范 围)生成用户提示信息,以提示用户,及帮助用户更进一步的理解该测 试消息(比如,用户提示信息中可以包含某个信息元的详细定义)。我 们可以理解,这样的用户提示信息可以包括错误提示信息和/或供用户参 考的正确数据信息和/或其它帮助信息。
具体的,该用户提示信息可以根据提示信息的内容、不同的应用场
合等至少采用如下格式之一进行显示二进制格式、八进制格式、十六 进制格式、文本格式、类型-长度-值(TLV)格式。
如果用户反馈的选择信息正确,则在步骤S25中,测试设备基于所 述用户反馈的选择信息生成测试消息,发送给被测试设备。
因此,釆用上述的测试方法对通信协i义进行测试时,可以方^[更测 试人员对测试消息进行定制;又由于通过对用户反馈的选择信息与预 存的测试消息的相关信息进行比较,因此可以自动发现测试过程中因 一些人为因素而引入的错误,加快测试进程,提高测试效率。同时, 该测试方法还给用户提供用户提示信息,从而在测试过程中实时、有 效地帮助用户更准确地理解通信协议本身。
作为该实施例的 一个变型,如果釆用客户机/服务器架构来实现上述 方法,那么,服务器首先接收来自所述客户机的用于指示对测试消息进 行测试的测试请求,然后,基于指定的测试消息的测试请求,根据预存 的测试消息的相关信息来生成所述测试消息的内容模板,并提供给用 户,随后,服务器执行上述的步骤S22至S25,为筒明起见,在此不作 赘述。其中,上迷消息具体指定了步骤S21中测试消息的测试请求的具体
信息,可以包括测试消息所属的通信协议名称、协议版本、测试消息
的消息名称等信息。
上述客户机/服务器架构,具体的,可以通过浏览器客户机/web服务 器架构来实现。
实施例三
图3示出了根据本发明的一个具体实施方式
,在浏览器客户机 /web服务器的架构上实现对通信协议进行测试的方法消息流图。浏览 器客户机2首先通过步骤S31向web服务器3发起"HTTP指定测试 请求",通过该请求指定具体哪个通信协议中的哪条消息将用于后续 的测试过程,可以包括该测试消息所属的通信协议名称、协议版本、该 测试消息的消息名称等信息;
接着,web服务器3根据收到的"HTTP指定测试请求",通过步 骤S32向保存有测试消息的相关信息的数据库服务器4发出查询请 求,这些相关信息可以从该测试消息所属的通信协议的描述文件中取 得,描述了测试消息的消息结构,各信息元的定义以及取值范围等信 息;数据库服务器4通过步骤S33向web服务器3返回有关测试消息 的相关信息;
接着,web服务器3基于获得的测试消息的相关信息,通过步骤 S34生成测试消息的内容模板,通过"HTTP测试模板响应"返回给 浏览器客户机2;
接着,用户1通过步骤S35在浏览器客户机2上基于测试消息的 内容模板选择定制测试消息的内容,其中所述的测试消息的内容模 板,可以包括测试消息的所有信息元,用户需要对每个信息元进行选 择定制,也可以只包括测试消息的部分信息元,用户l只对部分信息 元进行选择定制,而其余未选择定制的信息元取其缺省值,在具体操 作上,除对各个信息元进行赋值之外,用户还可以通过单选框等形式 定制该测试消息不包含某些信息元,而对应通信协议可能规定该测试消息强制必须包含该信息元;另外,用户还可以定制在该测试消息中 可以重复包含的信息元的重复次数;
最后浏览器客户机2通过步骤S36将用户1基于内容模板的选择 信息发送给web服务器3; web服务器3基于从数据库服务器4获得 的测试消息的相关信息对用户反馈的选择信息作合法性检查,根据检 查结果,生成用户提示信息,并通过步骤37 "HTTP测试数据响应" 返回给浏览器客户机2;如果上述检查结果正确,则生成测试消息, 通过网络发送给被测试设备5;浏览器客户机2将收到的用户提示信 息以恰当的方式显示并呈现给用户1。
其中,数据库服务器4中的测试消息的相关信息来源于其所属的 通信协议中该测试消息的定义,因此当被测试的通信协议的版本更新 时,可以通过更新数据库4中数据的方式,将新的通信协议版本的内 容导入到测试系统中,这样,测试系统就能及时地紧跟通信协议版本 的更新。在具体实施时,数据库服务器4和web服务器3在物理上可 以是同一个服务器。可选的,保存有测试消息的相关信息的数据库也 可以是web服务器4的一个组成部分,即web服务器4的一个组成 模块。访问数据库的方式,可以采用通用的数据库访问接口 ,也可以 是用户自定义的内部接口。
此外,浏览器客户机2在收到"HTTP测试数据响应"后,如果 发现该响应中包含有用户提示信息,可以通过多种显示格式进行显 示,这些显示格式包括二进制格式、八进制格式、十六进制格式、 文本格式、类型-长度-值(TLV)格式。采取哪种显示格式,取决于 被显示的内容、用户的使用习惯以及不同的应用场合等。
在上述实施例中,web服务器3生成测试消息之后,通过网络发 送给被测试设备5。作为该实施例的一个变型,web服务器3可以通 过调用另外一个应用程序完成上述发送步骤,该应用程序可以模拟从一个任意指定的源IP地址将测试消息发送到另一个指定的目的IP地
址。具体地,web服务器3调用该应用程序时,将需要模拟的源IP 地址、测试消息、接收该测试消息的目的IP地址(通常是被测试设 备5的IP地址)作为调用参数。通过这种方式发送测试消息,可以 将任意指定的IP地址才莫拟为该测试消息的源IP地址,而并不限于web 服务器自身的IP地址。 .
上述^是及的应用程序,更具体的,可以是一个CGI (Common Gateway Interface )程序,该程序可以具体解释用户在图形界面上具 体指定了测试消息的源地址和/或目的地址,然后web服务器通过网 络套接字接口 (NetworkSocketlnterface)发送测试消息。从技术上, 如果测试设备和被测试设备之间的连接基于TCP/IP协议,则为了模 拟一个消息的源IP地址和/或目的IP地址, 一个可^f于的方案是,首先 打开一个原始IP套接字(Raw IP Socket),然后把测试消息的内容加 入将要发送的IP包;定制IP包头,包括纟务改该IP包的源IP地址和/ 或目的IP地址,以及填入协议信息字段(例如对应RSVP协议该字 段为0x2e)等;在计算该消息的校验和(该校验和不含IP头)之后, 发送该IP包。如果web服务器和纟皮测试设备之间的连接基于其它协 议(比如用户自定义协议),则也可以通过类似的方式实现以指定的 源地址和/或目的地址发送测试消息,这对于本领域技术人员来说是显 而易见的。上述应用程序可以使用C/C++、 Perl、 PHP、 Bshell、 Cshell、 VB Script、 Java Script等语言编程实现。
此外,图4也示出了用户1在浏览器客户机2上基于测试消息的 内容模板进行定制的一个可能的具体界面。通过图4,我们可以理解, 基于本发明的测试方法,用户1可以通过一些筒单的#:作就可以定制 复杂的测试消息,比如仅仅通过操作下拉框(PULL—DOWN BOX )、 复选框(CHECKBOX),单选框(OPTION BUTTON)等简单操作完成 对所举例的测试消息的定制,过程简单,且容易理解,降低了因测试 人员的人为因素引入错误的风险,从而提高了测试效率。而在采用现有的测试方法和测试设备中,测试人员往往需要花费大量的时间和精 力来定制测试消息,定制过程复杂,而且容易引入错误。此外,作为上述实施例的一个变型,浏览器客户机2在连接到web服务器3之后,可以要求携带合法用户信息,、匕如要求输入合法 用户名以及用户口令等。web服务器3在验证上述用户信息合法之后, 才接收该浏览器客户机发出的HTTP请求消息,否则予以拒绝。实施例四图5示出了在同时支持多用户、多个被测试设备的情况下实施本 发明的测试方法的系统组成图。该系统表示了 n个用户在n个浏览器 客户机上同时通过web服务器对m个被测试设备进行测试的情形。 浏览器客户机2i (i=l,2,..,n)与web服务器3连接之后,web服务器 为该浏览器客户机分配对应的会话i,随后,浏览器客户机2i和web 服务器3之间的交互过程通过会话i进行,web服务器3也通过会话 i来识别接收到的测试请求具体来自哪个浏览器客户机。用户li (i-l,2,."n)通过浏览器客户机2i以及会话i,将"HTTP 指定测试请求"发送给web服务器3,通过该请求指定具体哪个通信 协议中的消息将用于后续的测试过程,可以包括测试消息所属的通信 协议名称、协议版本、测试消息的消息名称等信息;接着web服务器3 根据收到的"HTTP指定测试请求",向保存有测试消息的相关信息的 数据库服务器发出查询请求,这些相关信息可以从该测试消息所属的 通信协议的描迷文件中取得,描述了测试消息的消息结构,各信息元 的定义以及取值范围等信息;然后数据库服务器4向web服务器3返 回有关测试消息的相关信息;web服务器3基于获得的测试消息的相 关信息,生成测试消息的内容模板,通过"HTTP测试模板响应"的 形式返回给浏览器客户机2i;随后,用户li通过浏览器客户机2i在 测试消息的内容模板上定制测试消息的内容,这里所说的内容模板, 可以包括测试消息的所有信息元,用户需要对每个信息元进行选择定制,也可以只包括测试消息的部分信息元,用户只对部分信息元进行 选择定制,而其余未选择定制的信息元取其缺省值,用户基于内容模板的选择信息包含在浏览器客户机2i发送给web服务器3的"HTTP 测试数据请求"中,同时用户li还需要指定将该定制的测试消息发送 至哪个被测试设备,即目标被测试设备的标识,具体的,该标识可以 是web服务器3统一管理的被测试设备编号,或者被测试设备的IP 地址;接着,web服务器3基于从数据库服务器4获得的测试消息的 相关信息对用户反馈的选择信息作合法性检查,根据检查结果,生成 用户提示信息,通过"HTTP测试数据响应"返回给浏览器客户机2i, 同时生成被测试消息,web服务器3通过CGI应用程序把用户定制的 消息发送给目标被测试设备。更具体的,会话管理可以在web服务器3上通过多进程(Multiple Processes )或者多线程(Multiple Threads )服务程序实现。这样,web 服务器3就能够同时接收和处理来自多个浏览器客户机的HTTP测试 请求,生成测试消息,并被发送给各自的目标被测试设备。实施例五图6示出了根据本发明的一个具体实施例在测试设备中用于对通 信协议进行测试的测试装置框图。该测试装置10包括模板生成装置 101、第一接收装置102、消息生成装置103。模板生成装置101用于基于指定的测试消息的测试请求,根据预 存的测试消息的相关信息来生成该测试消息的内容模板,并提供给用 户,该内容模板至少包括测试消息的信头信息和测试消息的信息元数 据中部分或全部。其中,测试消息的测试请求,可以包括测试消息所属的通信协议名 称、协议版本、测试消息的消息名称等信息;预存的测试消息的相关信 息是指该测试消息在其所属的通信协议版本中对它的定义,具体可以包 括该测试消息的消息结构定义、所包含的各个信息元的定义,以及各个信息元的取值范围等信息。测试消息的内容模板,包括可供用户进行选 择以便完成对测试消息进行定制的格式,在此基础上可以方便地完成对 测试消息的定制。同时,允许用户对一个测试消息的全部信息元在内容 模板的基础上进行选择定制,也允许用户只对测试消息的其中 一部分信 息元进行选择定制,而用户没有进行定制选择的其它信息元在最终生成 测试消息时而取其缺省值。在具体操作上,除对各个信息元进行赋值之 外,用户还可以通过单选框等形式定制该测试消息不包含某些信息元, 而对应通信协议可能规定该测试消息强制必须包含该信息元;另外,用 户还可以定制在该测试消息中可以重复包含的信息元的重复次数。第 一接收装置1 02用于接收用户反馈的对该测试消息的信头信息 和测试消息的信息元数据中部分或全部的选择信息。消息生成装置103用于基于用户反馈的选择信息生成测试消息,发送给被测试设备。作为该实施例的一个变型,如图7所示,模板生成装置101进一 步包括相关信息查询装置1011和模板数据生成装置1012。相关信息查询装置1011用于基于指定的测试消息的测试请求, 通过查询操作获得测试消息的相关信息,然后提交给模板数据生成装 置1012,并由后者生成对应的测试消息的内容模板,提供给用户,该 内容模板至少包括测试消息的信头信息和测试消息的信息元数据中 部分或全部。作为该实施例的另一个变型,测试装置IO还包括第二接收装置, 用于接收来自 一个或多个客户机的用于指示对测试消息进行测试的 测试请求,并将接收到的测试请求发送给模板生成装置101。其中,上述消息具体指定了模板生成装置101所使用的测试消息的 测试请求的具体信息,可以包括测试消息所属的通信协议名称、协议 版本、测试消息的消息名称等信息。此外,作为该实施例的另一个变型,消息生成装置103还包括地址指定装置,用于将测试消息发送给被测试设备时,指定它的源地址和 /或目的地址。实施例六图8示出了根据本发明的一个具体实施例在测试设备中用于对通信协议进行测试的测试装置框图。该测试装置20包括模板生成装置 201、第一接收装置202、消息生成装置203、比较装置204、提示信 息生成装置205、提示信息显示装置206。模板生成装置201用于基于指定的测试消息的测试请求,根据预 存的测试消息的相关信息来生成所述测试消息的内容模板,并提供给 用户,该内容模板至少包括测试消息的信头信息和测试消息的信息元 数据中部分或全部。第一接收装置202用于接收用户反馈的对该测试 消息的信头信息和测试消息的信息元数据中部分或全部的选择信息。 消息生成装置203用于基于用户反馈的选择信息生成测试消息,发送 给被测试设备。比较装置204用于利用预存的测试消息的相关信息对 上述用户反馈的选择信息进行比较,以确定用户反馈的选择信息是否 正确;如果用户反馈的选择信息错误,则提示信息生成装置205负责 生成用户提示信息以提供给用户,其中,这些提示信息包括错误提示 信息和/或供用户参考的正确数据信息和/或其它帮助信息。提示信息 显示装置206则用于至少用如下一种格式显示用户提示信息二进制格 式、八进制格式、十六进制格式、文本格式、类型-长度-值(TLV)格 式。其中,测试消息的测试请求,可以包括测试消息所属的通信协议名 称、协议版本、测试消息的消息名称等信息;预存的测试消息的相关信 息是指该测试消息在其所属的通信协议版本中对它的定义,具体可以包 括该测试消息的消息结构定义、所包含的各个信息元的定义,以及各个 信息元的取值范围等信息。测试消息的内容模板,包括可供用户进行选 择以便完成对测试消息进行定制的格式,在此基础上可以方便地完成对 测试消息的定制。同时,允许用户对一个测试消息的全部信息元在内容模板的基础上进行选择定制,也允许用户只对测试消息的其中 一部分信 息元进行选择定制,而用户没有进行定制选择的其它信息元在最终生成 测试消息时而取其缺省值。在具体操作上,除对各个信息元进行赋值之 外,用户还可以通过单选框等形式定制该测试消息不包含某些信息元, 而对应通信协议可能规定该测试消息强制必须包含该信息元;另外,用 户还可以定制在该测试消息中可以重复包含的信息元的重复次数。作为该实施例的一个变型,模板生成装置201进一步包括相关信 息查询装置和模板数据生成装置。相关信息查询装置用于基于指定的 测试消息的测试请求,通过查询操作获得测试消息的相关信息,然后 将它提交给模板数据生成装置,并由后者生成对应的测试消息的内容 模板,提供给用户,该内容模板至少包括测试消息的信头信息和测试 消息的信息元数据中部分或全部。作为该实施例的另一个变型,测试装置20还包括第二接收装置, 用于接收来自 一个或多个客户机的用于指示对测试消息进行测试的测试请求,并将接收到的测试请求发送给模板生成装置201。其中,上述消息具体指定了模板生成装置201所使用的测试消息的 测试请求的具体信息,可以包括测试消息所属的通信协议名称、协议 版本、测试消息的消息名称等信息。此外,作为该实施例的另一个变型,消息生成装置203还包括地 址指定装置,用于将测试消息发送给被测试设备时,指定它的源地址和 /或目的地址。该装置首先修改测试消息的源地址和/或目的地址,然后 再通过测试装置和^皮测试设备之间的接口 ,将测试消息发送给被测试设 备。从技术上,如果测试设备和被测试设备之间的连接基于TCP/IP 协议,则为了模拟一个消息的源IP地址和/或目的IP地址, 一个可行 的方案是,测试装置首先打开一个原始IP套接字(Raw IP Socket), 然后把测试消息的内容加入将要发送的IP包;定制IP包头,包括修改该IP包的源IP地址和/或目的IP地址,以及填入协议信息字段(例如对应RSVP协议该字段为0x2e)等;在计算该消息的校验和(该校 验和不含IP头)之后,发送该IP包。如果测试装置和被测试设备之 间的连接基于其它协议(比如用户自定义协议),则也可以通过类似 的方式实现以指定的源地址和/或目的地址发送测试消息,这对于本领 域技术人员来说是显而易见的。另外,本领域技术人员可以理解的是,实施例五和实施例六中所 述的测试装置,可以是在客户机/服务器架构下的测试用服务器的 一个 组成部分。更具体的,上述客户机/服务器可以是浏览器客户机/web 服务器,对应的,上述测试装置为web服务器的一个组成部分。以上对本发明的具体实施例进行了描述。需要理解的是,本发明 并不局限于上述特定实施方式,本领域技术人员可以在所附权利要求 的范围内做出各种变型或修改。
权利要求
1. 一种在测试设备中用于对通信协议进行测试的方法,其特征在于,包括步骤b. 基于指定的测试消息的测试请求,根据预存的测试消息的相关信息来生成所述测试消息的内容模板,并提供给用户,所述测试消息的内容模板至少包括测试消息的信头信息和测试消息的信息元数据中部分或全部;c. 接收用户反馈的对所述测试消息的信头信息和测试消息的信息元数据中部分或全部的选择信息;d. 基于所述用户反馈的选择信息生成测试消息,发送给被测试设备。
2. 如权利要求1所述的测试方法,其特征在于,在所述步骤c之后 和步骤d之前还包括步骤-利用预存的测试消息的相关信息对所述用户反馈的选择信息进行 比较,以确定所述用户反馈的选择信息是否正确;如果用户反馈的选择信息错误,则生成用户提示信息以提供给用 户,其中,所述用户提示信息包括错误提示信息,和/或供用户参考的正 确数据信息,和/或其它帮助信息;如果用户反馈的选择信息正确,则执行步骤d。
3. 如权利要求1或2所迷的测试方法,其特征在于,所迷步骤b包括b 1 .基于所述测试消息的测试请求,访问数据库以查询所述测试消息 的相关信息;b2.根据所查询获得的测试消息的相关信息来生成所述测试消息的 内容模板,并提供给用户。
4. 如权利要求2所述的测试方法,其特征在于,至少用如下一种 格式显示所述的用户提示信息二进制格式、八进制格式、十六进制格 式、文本格式、类型-长度-值(TLV)格式。
5. 如权利要求l-4任一项所述的测试方法,其特征在于,所述测试 设备为与一个或多个客户机相连的网络服务器,其中在所述步骤b之前 还包括步骤a.接收来自所述客户机的用于指示对测试消息进行测试的测试请求。
6. 如权利要求5所述的测试方法,其特征在于,所述的客户机和 所述的网络服务器采用浏览器客户机/web服务器架构实现。
7. 如权利要求l-6任一项所述的测试方法,其特征在于,所述的发 送给被测试设备的步骤还包括将所述测试消息更改为指定的源地址和/ 或目的地址。
8. —种在测试设备中用于对通信协议进行测试的测试装置,其特 征在于,包括-模板生成装置,用于基于指定的测试消息的测试请求,根据预存 的测试消息的相关信息来生成所述测试消息的内容模板,并提供给用 户,所述测试消息的内容模板至少包括测试消息的信头信息和测试消息 的信息元数据中部分或全部;-第一接收装置,用于接收用户反馈的对所述测试消息的信头信息 和测试消息的信息元数据中部分或全部的选择信息;-消息生成装置,用于基于所述用户反馈的选择信息生成测试消息, 发送给被测试设备。
9. 如权利要求8所述的装置,其特征在于,还包括-比较装置,用于利用预存的测试消息的相关信息对所述用户反馈 的选择信息进行比较,以确定所述用户反馈的选择信息是否正确;-提示信息生成装置,用于如果用户反馈的选择信息错误,则生成 用户提示信息以提供给用户,其中,所述用户提示信息包括错误提示信 息,和/或供用户参考的正确数据信息,和/或其它帮助信息。
10. 如权利要求8或9所述的装置,其特征在于,所述模板生成装 置包括-相关信息查询装置,用于基于所述测试消息的测试请求,访问数据库以查询所述测试消息的相关信息;-模板数据生成装置,用于根据所查询获得的测试消息的相关信息 来生成所述被测试消息的内容模板,并提供给用户。
11. 如权利要求9所述的装置,其特征在于,还包括 提示信息显示装置,用于至少用如下一种格式显示所述的用户提示信息二进制格式、八进制格式、十六进制格式、文本格式、类型-长度 -值(TLV)格式。
12. 如权利要求8-11任一项所述的装置,其特征在于,所述测试设 备为与一个或多个客户机相连的网络服务器,其中还包括-第二接收装置,用于接收来自所述客户机的用于指示对测试消息 进行测试的测试:清求。
13. 如权利要求12所述的装置,其特征在于,所述的客户机和所 述的网络服务器分别为浏览器客户机和web服务器。
14. 如权利要求8-13任一项所述的装置,其特征在于,所述消息生 成装置还用于将所述发送给被测试设备的测试消息更改为指定的源地 址和/或目的i也址。
全文摘要
本发明提供了一种在测试设备中用于对通信协议进行测试的方法。该方法首先基于指定的测试消息的测试请求,根据预存的测试消息的相关信息来生成所述测试消息的内容模板,并提供给用户;然后接收用户反馈的对所述测试消息的信头信息和测试消息的信息元数据中部分或全部的选择信息;最后基于所述用户反馈的选择信息生成测试消息,发送给被测试设备。通过本发明的测试方法,可以有效提高对日益复杂的通信协议进行测试的效率,降低通信产品的研发和测试成本。
文档编号H04L12/26GK101534221SQ20081008612
公开日2009年9月16日 申请日期2008年3月11日 优先权日2008年3月11日
发明者芳 刘, 焦文华 申请人:朗讯科技公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1