一种用于自动生成业务交互测试脚本的系统技术方案

技术编号:24352919 阅读:34 留言:0更新日期:2020-06-03 01:58
本发明专利技术涉及一种用于自动生成业务交互测试脚本的系统,它包括以下模块:输入模块,其设有接口文档、服务器配置文件以及业务交互场景定义文件;工具模块,其设有接口定义文件生成工具、接口模型类生成工具以及业务交互脚本生成工具;输出模块,其设有接口定义文件、接口模型类以及接口测试文件。本发明专利技术的目的在于提供一种用于自动生成业务交互测试脚本的系统。本发明专利技术的优点在于:1.本测试系统可以根据接口文档及业务交互场景定义文件快速生成测试脚本,而减少人工编写脚本的成本;同时可以快速跟进项目,降低由于测试过程耗时过长导致项目延期的风险。2.本测试方案可以覆盖接口与接口间所有的交互场景,避免该测试范围内的漏测。

A system for automatically generating business interaction test scripts

【技术实现步骤摘要】
一种用于自动生成业务交互测试脚本的系统
本专利技术涉及接口自动化测试,特别是一种用于自动生成业务交互测试脚本的系统。
技术介绍
当前市场上针对接口间交互测试的一般做法是人工对照一个个接口文档,并手动在测试函数中拼装所有接口的请求信息,接着发送请求,然后对比响应结果;当出现接口间存在多种多种交互场景时,就需要手动创建多个测试函数,使得需要维护的代码量非常庞大,最终增加了测试成本。
技术实现思路
本专利技术的目的在于提供一种用于自动生成业务交互测试脚本的系统。本专利技术的目的通过如下技术方案实现:一种用于自动生成业务交互测试脚本的系统,它包括以下模块:输入模块,其设有接口文档、服务器配置文件以及业务交互场景定义文件;工具模块,其设有接口定义文件生成工具、接口模型类生成工具以及业务交互脚本生成工具;输出模块,其设有接口定义文件、接口模型类以及接口测试文件;所述接口定义文件生成工具通过接口文档中定义的接口约束条件将接口的请求参数列表和响应参数列表自动转换成以JSON形式存储的接口请求模型定义文件和接口合法响应模型定义文件,并储存至接口定义文件;接口模型类生成工具以接口请求模型定义文件作为输入,生成接口模型类,接口模型类为每个接口请求模型定义文件中的参数创建一个修改变量值函数与获取变量值函数,并生成获取请求体函数;业务交互脚本生成工具以业务交互场景定义文件、服务器配置文件、接口合法响应模型定义文件作为输入,生成接口测试文件,测试文件中设有测试函数,测试函数会根据业务交互场景定义文件中所有接口中待变更参数列表自动调用接口模型类的修改变量值函数去修改请求参数的使用值,然后调用获取变量值函数更新接口的JSON形式的请求体,接着根据服务器配置文件拼接请求URL,并发送接口请求;最后对比接口响应的实际值与预期值。较之现有技术而言,本专利技术的优点在于:1.本测试系统可以根据接口文档及业务交互场景定义文件快速生成测试脚本,而减少人工编写脚本的成本;同时可以快速跟进项目,降低由于测试过程耗时过长导致项目延期的风险。2.本测试方案可以覆盖接口与接口间所有的交互场景,避免该测试范围内的漏测。3.本测试方案只需维护接口文档、业务交互场景定义文件、被测服务配置文件,不需要维护大量的测试数据及测试脚本,从而解放人力成本。附图说明图1是本专利技术的总流程图。图2是接口定义文件生成工具的工作流程图。图3是接口模型类生成工具的工作流程图。图4是业务交互脚本生成工具的工作流程图。具体实施方式下面结合说明书附图和实施例对本
技术实现思路
进行详细说明:如图1和4所示为本专利技术提供的一种用于自动生成业务交互测试脚本的系统的实施例示意图。本专利技术可覆盖的接口协议包括:HTTP/HTTPS/SOCKET,本专利技术可以覆盖的测试场景包括:接口与接口间业务交互流程的测试场景。一种用于自动生成业务交互测试脚本的系统,它包括以下模块:输入模块,其设有接口文档、服务器配置文件以及业务交互场景定义文件;工具模块,其设有接口定义文件生成工具、接口模型类生成工具以及业务交互脚本生成工具;输出模块,其设有接口定义文件、接口模型类以及接口测试文件;所述接口定义文件生成工具通过接口文档中定义的接口约束条件将接口的请求参数列表和响应参数列表自动转换成以JSON形式存储的接口请求模型定义文件和接口合法响应模型定义文件,并储存至接口定义文件;接口模型类生成工具以接口请求模型定义文件作为输入,生成接口模型类,接口模型类为每个接口请求模型定义文件中的参数创建一个修改变量值函数与获取变量值函数,并生成获取请求体函数;业务交互脚本生成工具以业务交互场景定义文件、服务器配置文件、接口合法响应模型定义文件作为输入,生成接口测试文件(测试文件的命名格式一般为:test+场景定义文件名),测试文件中设有测试函数,测试函数会根据业务交互场景定义文件中所有接口中待变更参数列表自动调用接口模型类的修改变量值函数去修改请求参数的使用值,然后调用获取变量值函数更新接口的JSON形式的请求体,接着根据服务器配置文件拼接请求URL,并发送接口请求;最后对比接口响应的实际值与预期值。所述业务交互场景定义文件中存储一个或多个目标测试接口;服务器配置文件存储有被测服务器的IP及PORT;接口合法响应模型定义文件存储有接口正确响应的预期参数列表及其参数约束条件。每个参数都包含数据类型、长度、格式、是否必填等约束条件。接口定义文件生成工具的工作步骤如下:S1.读取接口文档,获取接口名:遍历接口文档中每个接口的接口名,并将接口名保存至缓存变量interface中;S2.读取接口请求参数标识,创建接口请求模型定义文件,文件名为:interface的值;S3.遍历请求参数列表,将列表中每个参数及其约束条件保存至接口请求模型定义文件中,存储格式为JSON串,约束条件包括:数据类型、格式、长度、必填标识、默认值、描述信息等;接口请求模型定义文件模板如下:S4.读取接口响应参数标识,创建接口合法响应模型定义文件,文件名为:interface的值+_result;S5.遍历响应参数列表,将列表中每个参数及其约束条件保存至接口合法响应模型定义文件中,存储格式为JSON串,约束条件包括:数据类型、格式、长度、必填标识、默认值、描述信息等。接口合法响应模型定义文件模板如下:接口模型类生成工具的工作步骤如下:S1.获取接口请求模型定义文件的接口名,创建接口模型类文件,文件名为接口名:遍历接口请求模型定义文件,获取接口名并保存至缓存变量interface中,创建接口模型类文件,文件名为interface的值;S2.在接口模型类文件中创建一个类,类名为接口名,即类名为interface的值;S3.遍历接口请求模型定义文件的参数列表,读取每个参数的参数名及其约束条件,约束条件包括:数据类型、格式、长度、必填标识、默认值、描述信息;S4.将参数名设置为模型类的成员变量名,参数的默认值作为成员变量的初始值;self._参数1="参数1默认值"self._参数2='参数2默认值'S5.分别为每个成员变量创建一个修改变量值函数与获取变量值函数,这些函数都为模型类的成员函数。通过这些成员函数,使得使用者可以根据需要随时修改请求参数的值,以满足特定的测试场景;S6.为模型类创建一个根据成员变量拼接接口请求体的成员函数,该成员函数可以使得每次请求接口时不用重新拼装请求体,减少测试脚本的代码量及维护测试数据的量。生成后的模型类文件完整模板如下:业务交互脚本生成工具的工作步骤如下:S1.读取业务交互场景定义文件,获取接口名、待变更参数列表、接口描述信息,并将其存至缓存变量;<本文档来自技高网
...

【技术保护点】
1.一种用于自动生成业务交互测试脚本的系统,其特征在于,它包括以下模块:/n输入模块,其设有接口文档、服务器配置文件以及业务交互场景定义文件;/n工具模块,其设有接口定义文件生成工具、接口模型类生成工具以及业务交互脚本生成工具;/n输出模块,其设有接口定义文件、接口模型类以及接口测试文件;/n所述接口定义文件生成工具通过接口文档中定义的接口约束条件将接口的请求参数列表和响应参数列表自动转换成以JSON形式存储的接口请求模型定义文件和接口合法响应模型定义文件,并储存至接口定义文件;/n接口模型类生成工具以接口请求模型定义文件作为输入,生成接口模型类,接口模型类为每个接口请求模型定义文件中的参数创建一个修改变量值函数与获取变量值函数,并生成获取请求体函数;/n业务交互脚本生成工具以业务交互场景定义文件、服务器配置文件、接口合法响应模型定义文件作为输入,生成接口测试文件,测试文件中设有测试函数,测试函数会根据业务交互场景定义文件中所有接口中待变更参数列表自动调用接口模型类的修改变量值函数去修改请求参数的使用值,然后调用获取变量值函数更新接口的JSON形式的请求体,接着根据服务器配置文件拼接请求URL,并发送接口请求;最后对比接口响应的实际值与预期值。/n...

【技术特征摘要】
1.一种用于自动生成业务交互测试脚本的系统,其特征在于,它包括以下模块:
输入模块,其设有接口文档、服务器配置文件以及业务交互场景定义文件;
工具模块,其设有接口定义文件生成工具、接口模型类生成工具以及业务交互脚本生成工具;
输出模块,其设有接口定义文件、接口模型类以及接口测试文件;
所述接口定义文件生成工具通过接口文档中定义的接口约束条件将接口的请求参数列表和响应参数列表自动转换成以JSON形式存储的接口请求模型定义文件和接口合法响应模型定义文件,并储存至接口定义文件;
接口模型类生成工具以接口请求模型定义文件作为输入,生成接口模型类,接口模型类为每个接口请求模型定义文件中的参数创建一个修改变量值函数与获取变量值函数,并生成获取请求体函数;
业务交互脚本生成工具以业务交互场景定义文件、服务器配置文件、接口合法响应模型定义文件作为输入,生成接口测试文件,测试文件中设有测试函数,测试函数会根据业务交互场景定义文件中所有接口中待变更参数列表自动调用接口模型类的修改变量值函数去修改请求参数的使用值,然后调用获取变量值函数更新接口的JSON形式的请求体,接着根据服务器配置文件拼接请求URL,并发送接口请求;最后对比接口响应的实际值与预期值。


2.根据权利要求1所述的一种用于自动生成业务交互测试脚本的系统,其特征在于:
所述业务交互场景定义文件中存储一个或多个目标测试接口;
服务器配置文件存储有被测服务器的IP及PORT;
接口合法响应模型定义文件存储有接口正确响应的预期参数列表及其参数约束条件。


3.根据权利要求2所述的一种用于自动生成业务交互测试脚本的系统,其特征在于:接口定义文件生成工具的工作步骤如下:
S1.读取接口文档,获取接口名;
S2.读取接口请求参数标识,创建接口请求模型定义文件;
S3.遍历请求参数列表,将参数及其约束条件保存至接口请求模型定义文...

【专利技术属性】
技术研发人员:黄琴陈海量
申请(专利权)人:福建博思软件股份有限公司
类型:发明
国别省市:福建;35

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

1