一种分布式信息系统接口自动化测试方法技术方案

技术编号:6124157 阅读:385 留言:0更新日期:2012-04-11 18:40
本发明专利技术为一种分布式信息系统接口自动化测试方法,涉及软件自动化测试领域。在与被测系统独立的主机中部署自动化测试控制端,被测主机中部署代理程序,自动化测试控制端解析测试用例文件,并查看该测试用例是否能够执行,若能则向被测主机中的代理程序发送测试消息,代理程序解析测试消息并监听被测主机发送的消息报文,若测试用例中第一条消息为事件触发,则代理程序调用自动化测试工具执行自动化测试控制端发送的测试脚本,在测试过程中,代理程序实时监听消息报文并转发给自动化测试控制端,最后控制端解析接收到的消息报文,输出验证结果,生成测试报告。本发明专利技术提高了分布式信息系统软件接口测试效率,简化了测试人员的工作。

【技术实现步骤摘要】

本专利技术涉及软件自动化测试领域,应用于分布式信息系统软件接口自动化测试中。
技术介绍
分布式信息系统一般由多个分系统组成,各个分系统的计算机设备以网络为纽带组成了一个局域以太网。各分系统基于以太网硬件拓扑结构组成一个分布式信息系统,相互协同处理实现所有任务功能。分系统中运行着多个软件配置项,各个软件配置项之间的消息通信是靠消息报文的收发来实现,各分系统之间接口的正确性对分布式信息系统的正常工作起着至关重要的作用。自动化测试是目前测试领域的发展方向,自动化测试能有效地降低测试成本、提高测试效率和测试覆盖面。现有的自动化测试工具,例如QTP、Ranorex、Rational Robot和 LoadRunner,侧重于对界面元素也就是UI (用户界面)控件的操作来实现自动化测试,通过录制脚本、生成测试用例脚本和执行脚本来实现自动化测试。而分布式信息系统接口测试侧重于各个分系统之间的消息的验证,因此现有的自动化测试工具并不能直接应用于分布式信息系统软件的接口测试中。接口测试是分布式信息系统软件测试中非常重要的部分,目的是为验证分布式信息系统内部软件配置项之间消息的正确性,其中包括消息时序和消息内容的正确性等。分布式信息系统软件具有分布性和异构性,分布性体现在所属各分系统的软件配置项部署在不同的主机上,依靠网络来实现消息的传递和通信,异构性表现在不同的主机上运行着不同的操作系统平台,如Windows或Unix等。因此,一个接口测试用例中消息的传递通常会涉及到多台主机和不同的平台。现阶段,测试人员针对接口测试通常的步骤是1、分析测试用例所涉及到的软件配置项,选择相应的主机进行消息获取;2、根据测试用例的内容在相应的主机上开启截包软件进行消息报文截取;3、使用分析工具验证所截获的消息报文中消息名称和消息字段内容是否正确。但是该接口测试方法也存在了不可避免的缺点首先由于分布式信息系统软件的分布性和异构性,测试用例所涉及的消息通信过程复杂,在接口测试过程中,需要多个测试人员分别在相应的主机上进行消息获取,使得接口测试周期长,难以适应分布式信息系统的接口测试特点。第二,分布式信息系统通信协议复杂,消息数量庞大,测试人员通过解析消息报文来获取消息的字段值,这种方法在消息验证上花费时间长,准确性低,给测试人员增加了工作量。第三,针对分布式信息系统接口测试,测试人员在多台被测主机上截取消息报文, 消息报文的收发时间取决于被测主机当前的时间,而对于不同主机,其系统时间很难一致, 因此,很难根据现有的测试方法验证消息的时序性。综上所述,针对分布式信息系统的特点,现有的自动化测试工具和接口测试方法都不适用于分布式信息系统软件的接口测试,需要提出一种接口自动化测试的方法,用以解决分布式信息系统软件接口测试过程中所面临的问题。
技术实现思路
本专利技术针对目前缺少对分布式信息系统软件接口进行自动测试的情况,提出,用以提高分布式信息系统软件接口测试效率。,具体包括以下步骤步骤一、自动化测试控制端解析接口测试用例文件,获取接口测试用例执行的前提信息相关被测软件配置项以及被测软件配置项所在的被测主机,并验证该接口测试用例执行的前提信息是否满足执行条件,若满足,则执行下一步骤,否则结束该接口测试用例的执行;步骤二、自动化测试控制端向被测主机中的代理程序发送测试消息;步骤三、被测主机中的代理程序接收到自动化测试控制端发送的测试消息后,解析该测试消息,开始监听被测主机发送的消息报文;步骤四、自动化测试控制端解析接口测试用例文件,获取该接口测试用例中消息的触发方式,判断该接口测试用例中第一条消息的产生方式是否为事件触发,若是,则自动化测试控制端向被测主机的代理程序发送测试脚本,代理程序调用其所在主机中的自动化测试工具执行测试脚本,然后执行步骤五,若不是,直接执行步骤五;步骤五、代理程序将所监听到的消息报文实时转发给自动化测试控制端;步骤六、自动化测试控制端解析接收到的消息报文,输出验证结果;步骤七、根据验证结果生成测试报告,并输出给用户。步骤一中所述的自动化测试控制端部署在与被测系统独立的主机中。所述的接口测试用例文件为已定义好的XML文件,文件内容包括接口用例执行所需的相关信息。所述执行条件包括被测软件配置项所在主机的工作正常和相关被测软件配置项已开启。步骤二中所述的代理程序部署在被测主机中,在测试过程中代理程序与自动化测试控制端进行通信,在接口测试过程中它接收控制端发送的测试消息,并且在测试执行过程中将消息报文发送给自动化测试控制端。步骤四中所述的测试脚本是指现有的自动化测试软件能够解释并执行的脚本,代理程序通过调用现有的自动化测试软件来执行该测试脚本,现有的自动化测试工具根据测试脚本内容进行相应的操作。本专利技术的接口自动化测试方法的优点和积极效果在于(1)本专利技术接口测试方法实现了分布式信息系统接口测试用例的自动化执行、测试数据信息的自动采集、测试结果的自动验证和测试报告的自动生成,提高了测试人员的工作效率。(2)本专利技术实现了分布式信息系统软件接口自动化测试,通过代理程序转发软件配置项间通信的消息报文给控制端进行统一处理,不需要多个测试人员在不同的主机上进行测试操作,从而简化了测试人员的工作。(3)代理程序将被测主机发送的消息报文实时转发给测试控制端,在测试控制端实现了被测主机之间消息报文的时序性验证。(4)在自动化测试的全过程中使用XML文件描述测试用例、测试消息和测试报告, 使得接口测试用例文件具有跨平台性,同时使得接口测试用例文件和测试结果报告更具有可编辑性和可读性。(5)根据验证结果自动生成测试用例执行测试报告,减轻了测试人员的工作量。 附图说明图1为本专利技术分布式信息系统软件接口自动化测试方法流程图;图2为本专利技术接口测试用例文件示意图;图3为本专利技术测试消息文件示意图;图4为本专利技术消息内容和消息时序的验证流程图;图5为本专利技术测试报告文件示意图。具体实施例方式下面将结合附图对本专利技术作进一步的详细说明。本专利技术针对分布式信息系统软件接口自动化测试方法,如图1所示,具体包括以下步骤步骤一、自动化测试控制端解析接口测试用例文件,获取接口测试用例信息,验证该接口测试用例执行的前提条件是否满足执行条件,若满足,则执行下一步骤,否则,该接口测试用例执行结束。所述的自动化测试控制端为部署在与被测系统独立的主机中的自动化测试控制端软件,用来解析接口测试用例文件,验证接口测试用例是否能够执行,在接口测试用例执行过程中向被测主机发送测试脚本,以及接收被测主机的消息报文,解析接收到的消息报文生成测试报告。所述的接口测试用例信息包括接口测试用例执行的相关被测软件配置项以及被测软件配置项所在的主机。所述执行条件主要包括被测软件配置项所在主机工作正常以及相关被测软件配置项已开启等。所述的接口测试用例文件为已定义好的XML文件,文件内容包括接口用例执行所需的相关信息。下面举例说明接口测试用例,该用例测试系统状态由工作转换为待机过程中的消息交互的正确性。下述CSCI_A, CSCI_B,CSCI_C 为软件配置项名称,Station_A, Station_B> Station_C为主机名称,软件配置项CSCI_A、CSCI_B和CSCI_C分别部署在主机Statio本文档来自技高网
...

【技术保护点】
1.一种分布式信息系统接口自动化测试方法,其特征在于,该测试方法具体步骤如下:步骤一、自动化测试控制端解析接口测试用例文件,获取接口测试用例执行的前提信息包括:被测软件配置项以及被测软件配置项所在的被测主机,并验证该接口测试用例执行的前提信息是否满足执行条件:被测软件配置项所在的被测主机工作正常以及被测软件配置项已开启,若满足,则执行下一步骤,否则结束该接口测试用例的执行;步骤二、自动化测试控制端向被测主机中的代理程序发送测试消息;步骤三、被测主机中的代理程序接收到自动化测试控制端发送的测试消息后,解析该测试消息,开始监听被测主机发送的消息报文;步骤四、自动化测试控制端解析接口测试用例文件,获取该接口测试用例中消息的触发方式,判断该接口测试用例中第一条消息的产生方式是否为事件触发,若是,则自动化测试控制端向被测主机的代理程序发送测试脚本,代理程序调用其所在主机中的自动化测试工具执行测试脚本,然后执行步骤五,若不是,直接执行步骤五;步骤五、代理程序将所监听到的消息报文实时转发给自动化测试控制端;步骤六、自动化测试控制端解析接收到的消息报文,输出验证结果;步骤七、根据验证结果生成测试报告,并输出给用户。...

【技术特征摘要】

【专利技术属性】
技术研发人员:尹杰储大为余丹叶钢张强王志超马世龙
申请(专利权)人:北京航空航天大学
类型:发明
国别省市:11

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

1