自动化接口测试系统及方法技术方案

技术编号:28419486 阅读:26 留言:0更新日期:2021-05-11 18:26
本发明专利技术提供了一种自动化接口测试系统及方法,所述系统包含:数据驱动装置用于根据测试需求获得接口数据、环境数据和档案数据,通过接口数据和预设的决策树数据结构构建流程编排数据,通过流程编排数据、环境数据和档案数据和预设交易流水号配置规则拼接生成测试案例数据;案例执行装置与数据驱动装置相连,用于解析测试案例数据生成对应的测试代码,通过测试代码调用应用服务器发起交易请求;自动化挡板装置与应用服务器相连,用于根据交易请求获取对应的交易流水号;通过预设交易流水号配置规则验证交易流水号,当验证通过后,通过沙箱应用服务处理交易请求获得业务回执,将业务回执反馈至应用服务器。

【技术实现步骤摘要】
自动化接口测试系统及方法
本专利技术涉及自动化测试领域,可应用于金融领域和其他领域,尤指一种自动化接口测试系统及方法。
技术介绍
随着互联网技术的快速发展,紧跟时代脚步,具备强劲高端的技术平台,是每个企业必须具备的基础能力。同时也意味着企业系统必须做出短周期的迭代更新、系统升级。系统的迭代升级,必然会对测试人员造成重大的测试压力。增量功能的测试、存量功能的回归,会对企业造成大量的成本投入,同时也会放缓科技创新速度。显然,自动化测试有着减少测试人员重复机械测试工作、提高测试精度、模拟人工难以测试的场景(如并发)、测试资产的积累、减少用人成本等特点,已成为企业技术能力不可缺少的一部分。当前自动化接口测试领域,测试人员本地环境采用脚本或者编码的方式,生成业务代码,通过执行完成案例的校验,该方法存在很多弊端:1、对测试人员能力要求较高,需要测试人员具有较高编码能力,同时编码也必然存在测试人员编码问题导致案例执行结果不准确;2、自动化代码并不能称作测试案例的一部分,应用的迭代升级,会导致频繁修改自动化业务代码,必然造成案例代码逻辑混乱,难以管理,最终导致自动化工具需要花费大量精力进行维护3、测试案例本地化执行,无法归集测试资产,对系统无法做到周期内稳定性的便捷分析。
技术实现思路
本专利技术目的在于提供一种自动化接口测试系统及方法,解决应用服务迭代周期短,测试人员资源短缺,目前自动化测试对测试人员技术能力要求高以及案例资产难以管理等问题。为达上述目的,本专利技术所提供的一种自动化接口测试系统,所述系统包含数据驱动装置、案例执行装置、应用服务器和自动化挡板装置;所述数据驱动装置用于根据测试需求获得接口数据、环境数据和档案数据,通过所述接口数据和预设的决策树数据结构构建流程编排数据,通过所述流程编排数据、所述环境数据和所述档案数据和预设交易流水号配置规则拼接生成测试案例数据;所述案例执行装置与所述数据驱动装置相连,用于解析所述测试案例数据生成对应的测试代码,通过所述测试代码调用应用服务器发起交易请求;所述自动化挡板装置与所述应用服务器相连,用于根据所述交易请求获取对应的交易流水号;通过预设交易流水号配置规则验证所述交易流水号,当验证通过后,通过沙箱应用服务处理所述交易请求获得业务回执,将所述业务回执反馈至所述应用服务器。在上述自动化接口测试系统中,优选的,所述数据驱动装置包含数据管理模块和流程编排模块;所述数据管理模块用于根据用户测试行为进行数据建模,构建环境数据库、档案数据库、接口数据库和流程编排数据库;以及,根据所述测试需求接收配置信息,通过所述配置信息于所述环境数据库、所述接口数据库和所述档案数据库获得对应的环境数据、接口数据和档案数据;所述流程编排模块采用决策树数据结构,通过所述决策树数据结构中各节点的节点属性设定并发与归集场景,所述流程编排模块用于通过所述接口数据和所述决策树数据结构中对应所述接口数据的节点属性构建流程编排数据。在上述自动化接口测试系统中,优选的,所述数据管理模块通过swagger套件同步所述应用服务器的接口参数,根据所述接口参数和用户测试行为构建所述接口数据库。在上述自动化接口测试系统中,优选的,所述案例执行装置包含数据解析模块、代码生成模块和执行模块;所述数据解析模块用于解析所述测试案例数据获得测试案例的配置参数;所述代码生成模块用于根据所述配置参数生成对应的测试代码;所述执行模块用于根据所述测试代码调用应用服务器发起交易请求。在上述自动化接口测试系统中,优选的,所述代码生成模块根据所述配置参数通过velocity插件生成对应的测试代码。在上述自动化接口测试系统中,优选的,自动化挡板装置包含路径检测模块、流水号检测模块和沙箱应用服务模块;所述路径检测模块用于分析所述交易请求的执行路径,当所述执行路径符合预设执行路径时,将所述交易请求提供至所述流水号检测模块;所述流水号检测模块用于根据所述交易请求获取对应的交易流水号,通过预设交易流水号配置规则验证所述交易流水号,当验证通过后,将所述交易请求提供至所述沙箱应用服务模块;所述沙箱应用服务模块用于处理所述交易请求,根据处理结果生成业务回执,将所述业务回执反馈至所述应用服务器。在上述自动化接口测试系统中,优选的,所述系统还包含结果分析模块,所述结果分析模块与所述应用服务器相连,用于将所述应用服务器接收到的所述业务回执与预设反馈结果比较,根据比较结果获得测试结果;以及,将所述测试结果为失败的测试案例数据与预设标记类别匹配,根据匹配结果校验所述测试结果是否为误报。本专利技术还提供一种自动化接口测试方法,所述方法包含:根据测试需求获得接口数据、环境数据和档案数据,通过所述接口数据和预设的决策树数据结构构建流程编排数据;通过所述流程编排数据、所述环境数据和所述档案数据和预设交易流水号配置规则拼接生成测试案例数据;解析所述测试案例数据生成对应的测试代码,通过所述测试代码发起交易请求;根据所述交易请求获取对应的交易流水号,通过预设交易流水号配置规则验证所述交易流水号,当验证通过后,通过沙箱应用服务处理所述交易请求获得业务回执。在上述自动化接口测试方法中,优选的,根据测试需求获得接口数据、环境数据和档案数据,通过所述接口数据和预设的决策树数据结构构建流程编排数据包含:根据用户测试行为进行数据建模,构建环境数据库、档案数据库、接口数据库和流程编排数据库;根据所述测试需求接收配置信息,通过所述配置信息于所述环境数据库、所述接口数据库和所述档案数据库获得对应的环境数据、接口数据和档案数据;利用所述决策树数据结构中各节点的节点属性设定并发与归集场景,通过所述接口数据和所述决策树数据结构中对应所述接口数据的节点属性构建流程编排数据。在上述自动化接口测试方法中,优选的,根据用户测试行为进行数据建模,构建环境数据库、档案数据库、接口数据库和流程编排数据库包含:通过swagger套件同步所述应用服务器的接口参数,根据所述接口参数和用户测试行为构建所述接口数据库。在上述自动化接口测试方法中,优选的,解析所述测试案例数据生成对应的测试代码,通过所述测试代码发起交易请求包含:解析所述测试案例数据获得测试案例的配置参数;根据所述配置参数通过velocity插件生成对应的测试代码;根据所述测试代码调用应用服务器发起交易请求。在上述自动化接口测试方法中,优选的,根据所述交易请求获取对应的交易流水号,通过预设交易流水号配置规则验证所述交易流水号,当验证通过后,通过沙箱应用服务处理所述交易请求获得业务回执包含:分析所述交易请求的执行路径;当所述执行路径符合预设执行路径时,根据所述交易请求获取对应的交易流水号;通过预设交易流水号配置规则验证所述交易流水号,当验证通过后,将所述交易请求提供至所述沙箱应用服务模块处理所述交易请求;根据处理结果生成业务回执。在上述自动化接口测试方法中,优选的,所述方法还包含:将所述业务回执与预设反馈结果比较,根据比较结果获得测试结果;当所述测试结果为失败时,获取所述测试结果本文档来自技高网...

【技术保护点】
1.一种自动化接口测试系统,其特征在于,所述系统包含数据驱动装置、案例执行装置、应用服务器和自动化挡板装置;/n所述数据驱动装置用于根据测试需求获得接口数据、环境数据和档案数据,通过所述接口数据和预设的决策树数据结构构建流程编排数据,通过所述流程编排数据、所述环境数据和所述档案数据和预设交易流水号配置规则拼接生成测试案例数据;/n所述案例执行装置与所述数据驱动装置相连,用于解析所述测试案例数据生成对应的测试代码,通过所述测试代码调用应用服务器发起交易请求;/n所述自动化挡板装置与所述应用服务器相连,用于根据所述交易请求获取对应的交易流水号;通过预设交易流水号配置规则验证所述交易流水号,当验证通过后,通过沙箱应用服务处理所述交易请求获得业务回执,将所述业务回执反馈至所述应用服务器。/n

【技术特征摘要】
1.一种自动化接口测试系统,其特征在于,所述系统包含数据驱动装置、案例执行装置、应用服务器和自动化挡板装置;
所述数据驱动装置用于根据测试需求获得接口数据、环境数据和档案数据,通过所述接口数据和预设的决策树数据结构构建流程编排数据,通过所述流程编排数据、所述环境数据和所述档案数据和预设交易流水号配置规则拼接生成测试案例数据;
所述案例执行装置与所述数据驱动装置相连,用于解析所述测试案例数据生成对应的测试代码,通过所述测试代码调用应用服务器发起交易请求;
所述自动化挡板装置与所述应用服务器相连,用于根据所述交易请求获取对应的交易流水号;通过预设交易流水号配置规则验证所述交易流水号,当验证通过后,通过沙箱应用服务处理所述交易请求获得业务回执,将所述业务回执反馈至所述应用服务器。


2.根据权利要求1所述的自动化接口测试系统,其特征在于,所述数据驱动装置包含数据管理模块和流程编排模块;
所述数据管理模块用于根据用户测试行为进行数据建模,构建环境数据库、档案数据库、接口数据库和流程编排数据库;以及,根据所述测试需求接收配置信息,通过所述配置信息于所述环境数据库、所述接口数据库和所述档案数据库获得对应的环境数据、接口数据和档案数据;
所述流程编排模块采用决策树数据结构,通过所述决策树数据结构中各节点的节点属性设定并发与归集场景,所述流程编排模块用于通过所述接口数据和所述决策树数据结构中对应所述接口数据的节点属性构建流程编排数据。


3.根据权利要求2所述的自动化接口测试系统,其特征在于,所述数据管理模块通过swagger套件同步所述应用服务器的接口参数,根据所述接口参数和用户测试行为构建所述接口数据库。


4.根据权利要求1所述的自动化接口测试系统,其特征在于,所述案例执行装置包含数据解析模块、代码生成模块和执行模块;
所述数据解析模块用于解析所述测试案例数据获得测试案例的配置参数;
所述代码生成模块用于根据所述配置参数生成对应的测试代码;
所述执行模块用于根据所述测试代码调用应用服务器发起交易请求。


5.根据权利要求4所述的自动化接口测试系统,其特征在于,所述代码生成模块根据所述配置参数通过velocity插件生成对应的测试代码。


6.根据权利要求1所述的自动化接口测试系统,其特征在于,自动化挡板装置包含路径检测模块、流水号检测模块和沙箱应用服务模块;
所述路径检测模块用于分析所述交易请求的执行路径,当所述执行路径符合预设执行路径时,将所述交易请求提供至所述流水号检测模块;
所述流水号检测模块用于根据所述交易请求获取对应的交易流水号,通过预设交易流水号配置规则验证所述交易流水号,当验证通过后,将所述交易请求提供至所述沙箱应用服务模块;
所述沙箱应用服务模块用于处理所述交易请求,根据处理结果生成业务回执,将所述业务回执反馈至所述应用服务器。


7.根据权利要求1所述的自动化接口测试系统,其特征在于,所述系统还包含结果分析模块,所述结果分析模块与所述应用服务器相连,用于将所述应用服务器接收到的所述业务回执与预设反馈结果比较,根据比较结果获得测试结果;以及,将所述测试结果为失败的测试案例数据与预设标记类别匹配,根据匹配结果校验所述...

【专利技术属性】
技术研发人员:王成义王禹左超刘曼
申请(专利权)人:中国工商银行股份有限公司
类型:发明
国别省市:北京;11

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

1