首页 / 专利库 / 电脑零配件 / 接口 / 联调测试方法和系统

联调测试方法和系统

阅读:480发布:2023-05-29

专利汇可以提供联调测试方法和系统专利检索,专利查询,专利分析的服务。并且本 申请 涉及一种联调测试方法和系统,所述方法包括:在接收到测试 请求 时,验证请求端的账号信息;在所述账号信息对应的测试数据中查询信息,其中所述测试数据是通过账号信息进行逻辑隔离并存储的;返回查询结果。本申请的方案通过账号信息区分测试数据,实现不同测试项目的数据之间的逻辑隔离,能够实现多用户同时测试,保证数据的安全性;全部测试过程都在独立的测试数据中进行,实现与生产环境的隔离。,下面是联调测试方法和系统专利的具体信息内容。

1.一种联调测试方法,其特征在于,包括:
在接收到测试请求时,验证请求端的账号信息;
在所述账号信息对应的测试数据中查询信息,其中所述测试数据是通过账号信息进行逻辑隔离并存储的;
返回查询结果。
2.根据权利要求1所述的方法,其特征在于,所述测试数据包括商品基础信息;相应地,所述方法还包括:
获取配置信息;
根据所述配置信息进行商品基础信息的初始化;
根据所述账号信息将对应的商品基础信息进行数据隔离。
3.根据权利要求2所述的方法,其特征在于,所述根据所述配置信息进行商品基础信息的初始化,包括:
根据所述配置信息从生产环境中搜集相关数据;
将搜集的数据批量复制并隔离存储。
4.根据权利要求1所述的方法,其特征在于,所述验证请求端的账号信息,包括:
验证参数合法性;
验证参数合法通过后,发起查询请求;
校验账号信息是否存在;
如果不存在,返回错误响应;如果存在,根据测试请求查询相应的信息。
5.根据权利要求1-4任一项所述的方法,其特征在于,在所述账号信息对应的测试数据中查询信息,包括:
根据所述账号信息确定对应的测试数据;
根据所述测试请求调用待测试的接口
通过待测试的接口到对应的测试数据中查询信息。
6.一种联调测试系统,其特征在于,包括:
测试前台,用于在接收到测试请求时,验证请求端的账号信息;
测试中台,用于在所述账号信息对应的测试数据中查询信息,并返回查询结果到所述测试前台;
数据库,用于存储通过账号信息进行逻辑隔离的测试数据。
7.根据权利要求6所述的系统,其特征在于,所述测试数据包括商品基础信息;
测试前台还用于:获取配置信息;
相应地,所述系统还包括:
测试后台,用于根据所述配置信息进行商品基础信息的初始化;根据所述账号信息将对应的商品基础信息进行数据隔离。
8.根据权利要求7所述的系统,其特征在于,所述测试后台根据所述配置信息进行商品基础信息的初始化,具体包括:
根据所述配置信息从生产环境中搜集相关数据;
将搜集的数据批量复制并隔离存储。
9.根据权利要求6所述的系统,其特征在于,所述测试前台验证请求端的账号信息,具体包括:
验证参数合法性;
验证参数合法通过后,发起查询请求;
校验账号信息是否存在;
如果不存在,返回错误响应;如果存在,根据测试请求查询相应的信息。
10.根据权利要求6所述的系统,其特征在于,所述测试中台在所述账号信息对应的测试数据中查询信息,具体包括:
根据所述账号信息确定对应的测试数据;
根据所述测试请求调用待测试的接口;
通过待测试的接口到对应的测试数据中查询信息。

说明书全文

联调测试方法和系统

技术领域

[0001] 本申请涉及接口调试技术领域,具体涉及一种联调测试方法和系统。

背景技术

[0002] 联调测试是单元测试的逻辑扩展,它的最简单的形式是:两个已经测试过的单元组合成一个组件,并且测试它们之间的接口。在实际测试场景中,许多单元组合成组件,而这些组件又聚合成程序的更大部分。
[0003] 当前,很多开放平台都可以给用户提供各种各样的接口服务,用户在使用接口服务时前需要先对接口进行联调测试。目前在接口联调测试过程中,开放平台与客户之间的通用对接方式是,开放平台为不同的客户分别提供不同的服务器,部署客户所需要的环境,测试数据要客户分别提供。
[0004] 相关技术中,标准API用户接入过程中的联调测试环节存在多个痛点:
[0005] 一是数据隔离要求。不同的客户需要采用不同的测试数据,因而需要将不同客户的测试数据进行隔离。
[0006] 二是测试商品数据不全。在API联调过程中,由于涉及多种业务场景,大量依赖外围系统数据准备。比如:1、商品种类需求;商品种类包括自营、厂送、套餐、虚拟品、礼品卡等。2、商品属性需求;需要支撑用户在联调过程中随时修改商品详情、商品参数、商品价格、商品规格等。想要模拟出较为全面的商品数据,需要的时间长、流程复杂,无法及时满足用户需求,严重影响API用户接入效率。
[0007] 三是流程化缺失。测试环境验证后无法平移到生产环境,导致生产环境依然会出现各种测试环境的已知问题。发明内容
[0008] 为至少在一定程度上克服相关技术中存在的问题,本申请提供一种联调测试方法和系统。
[0009] 根据本申请实施例的第一方面,提供一种联调测试方法,包括:
[0010] 在接收到测试请求时,验证请求端的账号信息;
[0011] 在所述账号信息对应的测试数据中查询信息,其中所述测试数据是通过账号信息进行逻辑隔离并存储的;
[0012] 返回查询结果。
[0013] 进一步地,所述测试数据包括商品基础信息;相应地,所述方法还包括:
[0014] 获取配置信息;
[0015] 根据所述配置信息进行商品基础信息的初始化;
[0016] 根据所述账号信息将对应的商品基础信息进行数据隔离。
[0017] 进一步地,所述根据所述配置信息进行商品基础信息的初始化,包括:
[0018] 根据所述配置信息从生产环境中搜集相关数据;
[0019] 将搜集的数据批量复制并隔离存储。
[0020] 进一步地,所述验证请求端的账号信息,包括:
[0021] 验证参数合法性;
[0022] 验证参数合法通过后,发起查询请求;
[0023] 校验账号信息是否存在;
[0024] 如果不存在,返回错误响应;如果存在,根据测试请求查询相应的信息。
[0025] 进一步地,在所述账号信息对应的测试数据中查询信息,包括:
[0026] 根据所述账号信息确定对应的测试数据;
[0027] 根据所述测试请求调用待测试的接口;
[0028] 通过待测试的接口到对应的测试数据中查询信息。
[0029] 根据本申请实施例的第二方面,提供一种联调测试系统,包括:
[0030] 测试前台,用于在接收到测试请求时,验证请求端的账号信息;
[0031] 测试中台,用于在所述账号信息对应的测试数据中查询信息,并返回查询结果到所述测试前台;
[0032] 数据库,用于存储通过账号信息进行逻辑隔离的测试数据。
[0033] 进一步地,所述测试数据包括商品基础信息;
[0034] 测试前台还用于:获取配置信息;
[0035] 相应地,所述系统还包括:
[0036] 测试后台,用于根据所述配置信息进行商品基础信息的初始化;根据所述账号信息将对应的商品基础信息进行数据隔离。
[0037] 进一步地,所述测试后台根据所述配置信息进行商品基础信息的初始化,具体包括:
[0038] 根据所述配置信息从生产环境中搜集相关数据;
[0039] 将搜集的数据批量复制并隔离存储。
[0040] 进一步地,所述测试前台验证请求端的账号信息,具体包括:
[0041] 验证参数合法性;
[0042] 验证参数合法通过后,发起查询请求;
[0043] 校验账号信息是否存在;
[0044] 如果不存在,返回错误响应;如果存在,根据测试请求查询相应的信息。
[0045] 进一步地,所述测试中台在所述账号信息对应的测试数据中查询信息,具体包括:
[0046] 根据所述账号信息确定对应的测试数据;
[0047] 根据所述测试请求调用待测试的接口;
[0048] 通过待测试的接口到对应的测试数据中查询信息。
[0049] 本申请的实施例提供的技术方案具备以下有益效果:
[0050] 本申请的方案通过账号信息区分测试数据,实现不同测试项目的数据之间的逻辑隔离,能够实现多用户同时测试,保证数据的安全性;全部测试过程都在独立的测试数据中进行,实现与生产环境的隔离。
[0051] 应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本申请。附图说明
[0052] 此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本申请的实施例,并与说明书一起用于解释本申请的原理。
[0053] 图1是根据一示例性实施例示出的一种联调测试方法的流程图
[0054] 图2是根据一示例性实施例示出的一种联调测试方法的流程图。
[0055] 图3是根据一示例性实施例示出的一种待收货定时任务的流程示意。
[0056] 图4是根据一示例性实施例示出的一种获取商品详情的测试流程示意。
[0057] 图5是根据一示例性实施例示出的一种联调测试系统的技术架构示意图。

具体实施方式

[0058] 这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本申请相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本申请的一些方面相一致的装置和方法的例子。
[0059] 图1是根据一示例性实施例示出的一种联调测试方法的流程图。该方法包括以下步骤:
[0060] 步骤S1:在接收到测试请求时,验证请求端的账号信息;
[0061] 步骤S2:在所述账号信息对应的测试数据中查询信息,其中所述测试数据是通过账号信息进行逻辑隔离并存储的;
[0062] 步骤S3:返回查询结果。
[0063] 本申请的方案通过账号信息区分测试数据,实现不同测试项目的数据之间的逻辑隔离,能够实现多用户同时测试,保证数据的安全性;全部测试过程都在独立的测试数据中进行,实现与生产环境的隔离。
[0064] 参照图2,本申请的联调测试方案,具体流程包括如下所述的三个部分。
[0065] 第一部分,商品基础信息初始化。商品基础信息需要从主站上搜集相关数据;按照流程顺序,完成商品基础相关信息的初始化,以客户编号做区分,实现多租户数据隔离。
[0066] 一些实施例中,所述测试数据包括商品基础信息;相应地,所述方法还包括:
[0067] 获取配置信息;
[0068] 根据所述配置信息进行商品基础信息的初始化;
[0069] 根据所述账号信息将对应的商品基础信息进行数据隔离。
[0070] 具体地,可以采用如下方式进行数据隔离:共享同一个库表,数据库存储的每条记录会绑定客户编号custNo字段,获取数据根据绑定的客户编号字段获取自己的数据即可。其中,客户编号即为所述的账号信息。
[0071] 本申请的方案可以通过会员名编号区分业务数据,实现各业务数据的逻辑隔离,实现多租户,保证数据的安全性。通过配置随时修改商品详情、商品参数、商品价格、商品规格,快速模拟数据。
[0072] 一些实施例中,所述根据所述配置信息进行商品基础信息的初始化,包括:
[0073] 根据所述配置信息从生产环境中搜集相关数据;
[0074] 将搜集的数据批量复制并隔离存储。
[0075] 通过配置相关参数,批量模拟初始化相关业务数据,快速生成和生产环境一致的商品数据,解决对外围系统数据依赖和数据准备时效的问题。由于是从生产环境中复制真实的业务数据,因而方便给出种类较为全面的测试数据,容易对各种异常情况进行验证,测试环境验证后可以平移到生产环境。
[0076] 在一些具体的实施例中,商品基础信息初始化过程可以包括如下步骤:
[0077] 初始化商品详情表信息zs_product_info;
[0078] 从xls文档批量导入合同数据,初始化合同表zs_user_contract;
[0079] 批量初始化地址信息,包括省、区、镇,做为基础数据;
[0080] 用户通过界面,输入客户编号;
[0081] 通过sql,先给客户编号初始化用户数据,客户编号取界面传参,其他数据通过sql固定;
[0082] 先去合同表,校验客户编号的合法性;
[0083] 初始化zs_user_vatticket客户增票信息认证表,只初始化topCustNo,取值界面传参,其它字段空着;
[0084] 初始化zs_user_product_category客户商品目录配置信息维护表,客户编号取界面传参,其他数据通过sql固定,同时插入消息;
[0085] 初始化zs_user_product_pool商品池,客户编号取界面传参,其他值从信息表取,插入消息;
[0086] 初始化zs_user_product_inventory:城市、商品数,商品详情表zs_product_info和区域表zs_district取交集;
[0087] 初始化用户账号表zs_user_account,客户编号从界面获取,其他数据固定;
[0088] 初始化表zs_user_account_log;
[0089] 初始化表zs_user_product_mapping;
[0090] 初始化表zs_user_address_mapping。
[0091] 第二部分,客户信息初始化。客户初始化流程简化系统使用人员初始化配置工作,通过设定默认值由系统自动完成相关配置信息的初始化工作。
[0092] 提前在会员中心注册一批(比如1000个)测试账号;同步将这1000个账号在开放平台同步注册号并获取对应的appkey;如果有新用户需要联调时需要将用户先注册到测试系统中的合同配置,然后点击初始化按钮完成自动初始化,一个用户只能初始化一次。
[0093] 在一些具体的实施例中,客户信息初始化过程可以包括如下步骤:
[0094] 会员中心:注册测试企业账号(CustNo账号);
[0095] 开放平台:注册appkey;
[0096] 客户合同配置:自动写入到zs_user_contract表;
[0097] 客户组织架构配置:默认将账号作为当母账号初始化到zs_user表中;
[0098] 客户账户配置:默认为当前账户创建账期、预存款两个账户;
[0099] 客户商品目录配置:取默认的一级、二级、三级目录直接初始化到zs_user_product_category表中;
[0100] 客户商品池配置:从商品基础表中获取默认的商品直接初始化到用户商品池表zs_user_product_pool表中;
[0101] 客户商品池库存配置:从商品池中获取已经初始化的商品按照默认地区初始化库存信息到zs_user_product_inventory表中。
[0102] 第三部分,商品基础信息、客户信息初始化完成后,即可进行后续的测试工作。
[0103] 参照图2,在进行测试过程之前,还可以包括定时任务修改订单信息的过程(即待收货任务)。待收货主要是对已经扣减完库存的订单,模拟oms、物流的发货流程;定时任务每隔5分钟执行一次,检索订单行表中状态是01(即已发B2C)和更时间时间小于30分钟之前的订单,订单任务需要完成生成物流详情、生成消息、更改订单行、头状态等流程。
[0104] 参照图3,待收货任务具体可以包括以下步骤:
[0105] 任务开启:发货job开启;
[0106] 检索订单:在zs_order_item中根据status=01and update_time<=当前时间-30分钟;
[0107] 发起物流详情请求;
[0108] 写入详情:按行写入zs_order_logist和zs_order_logist_detail;
[0109] 写入成功,发起消息推送请求;
[0110] 写入订单物流消息:按行写入zs_user_push_message订单物流消息;
[0111] 写入成功,更新zs_order_item状态;
[0112] job执行完毕。
[0113] 参照图4,一些实施例中,在进行实际测试的过程中,所述验证请求端的账号信息,包括:
[0114] 验证参数合法性;
[0115] 验证参数合法通过后,发起查询请求;
[0116] 校验账号信息是否存在;
[0117] 如果不存在,返回错误响应;如果存在,根据测试请求查询相应的信息。
[0118] 其中,账号信息可以是客户编号。
[0119] 一些实施例中,在所述账号信息对应的测试数据中查询信息,包括:
[0120] 根据所述账号信息确定对应的测试数据;
[0121] 根据所述测试请求调用待测试的接口;
[0122] 通过待测试的接口到对应的测试数据中查询信息。
[0123] 参照图4,结合具体的获取商品详情数据的应用场景,对本申请的测试过程进行拓展说明。获取商品详情数据的测试过程,具体可以包括如下步骤:
[0124] 1、发起请求:用户通过开放平台发起获取商品池信息的请求到前台。
[0125] 2、报文转换:前台将json请求报文转换为DTO;如果转换错误,返回相应的错误代码(biz.govbus.proddetail.invalid-biz:100)。
[0126] 合法性校验:转换成功后,前台进行DTO参数合法性校验;如果入参校验失败,返回相应的错误代码(biz.govbus.proddetail.invalid-biz:101)。
[0127] 3、发起查询请求:前台验证参数合法通过后,通过RSF向中台发起查询请求。
[0128] 4、校验客户编号是否存在:GCTEST中台,在zs_user_contract合同表中校验客户编号是否存在;如果不存在(custNo不存在),则返回给前台错误响应,客户编号不存在(biz.govbus.proddetail.invalid-biz:102)。
[0129] 然后前台反馈给开放平台。
[0130] 5、查询信息是否存在:中台根据商品编码、客户编号,校验在数据表zs_user_product_pool中是否存在要查询的信息。
[0131] 如果不存在,中台返回给前台的信息为空;前台返回错误响应到开放平台,告知“商品不属于该客户(biz.govbus.proddetail.invalid-biz:106)”。
[0132] 6、查询详细商品数据:中台根据商品编码在数据表zs_product_info中查询基本信息,根据商品编码在数据表zs_product_image中查询图片信息,根据商品编码在数据表zs_product_description中查询描述信息。
[0133] 如果查无商品数据,则中台反馈给前台“zs_product_info无商品数据”;前台返回错误响应到开放平台,告知“查询商品信息异常(biz.govbus.proddetail.invalid-biz:105)”。如果能查到商品数据,则正常返回详情数据。
[0134] 本申请的方案通过实现完整的业务流程,模拟所有异常情况,覆盖异常场景。通过定时任务,定时修改订单状态,完整的模拟订单物流流转信息。减少测试联调人员做各种协调、排查等重复工作的投入,专注功能测试。测试环境验证后,代码可以平移到生产环境。全部采用通用流程,无须安排专人对接,解决对接时间长、流程复杂,以及无法及时满足用户需求、严重影响API用户接入效率的问题。
[0135] 本申请还提供如下的实施例:
[0136] 一种联调测试系统,包括:
[0137] 测试前台,用于在接收到测试请求时,验证请求端的账号信息;
[0138] 测试中台,用于在所述账号信息对应的测试数据中查询信息,并返回查询结果到所述测试前台;
[0139] 数据库,用于存储通过账号信息进行逻辑隔离的测试数据。
[0140] 参照图5,本方案可以采用如下的技术架构:
[0141] (1)单独部署GCTEST-ADMIN(后台)、MYSQL(数据库),后台作为系统管理平台,主要用作测试数据维护配置作用;
[0142] (2)单独申请扩容两台服务器,手动发布GCTEST-SERVICE中台,单独配置测试系统的数据源;
[0143] (3)通过远程服务框架RSF的单元化脚本,实现客户编号路由到不同的应用服务器
[0144] 其中,不同的应用服务器是指前台服务器(GCTEST-WEB)。前台采用集群部署,实现路由分发。
[0145] 一些实施例中,所述测试数据包括商品基础信息;
[0146] 测试前台还用于:获取配置信息;
[0147] 相应地,所述系统还包括:
[0148] 测试后台,用于根据所述配置信息进行商品基础信息的初始化;根据所述账号信息将对应的商品基础信息进行数据隔离。
[0149] 一些实施例中,所述测试后台根据所述配置信息进行商品基础信息的初始化,具体包括:
[0150] 根据所述配置信息从生产环境中搜集相关数据;
[0151] 将搜集的数据批量复制并隔离存储。
[0152] 一些实施例中,所述测试前台验证请求端的账号信息,具体包括:
[0153] 验证参数合法性;
[0154] 验证参数合法通过后,发起查询请求;
[0155] 校验账号信息是否存在;
[0156] 如果不存在,返回错误响应;如果存在,根据测试请求查询相应的信息。
[0157] 一些实施例中,所述测试中台在所述账号信息对应的测试数据中查询信息,具体包括:
[0158] 根据所述账号信息确定对应的测试数据;
[0159] 根据所述测试请求调用待测试的接口;
[0160] 通过待测试的接口到对应的测试数据中查询信息。
[0161] 关于上述实施例中的系统,其中各个部分执行操作的具体步骤已经在有关该方法的实施例中进行了详细描述,此处不再详细阐述说明。
[0162] 可以理解的是,上述各实施例中相同或相似部分可以相互参考,在一些实施例中未详细说明的内容可以参见其他实施例中相同或相似的内容。
[0163] 需要说明的是,在本申请的描述中,术语“第一”、“第二”等仅用于描述目的,而不能理解为指示或暗示相对重要性。此外,在本申请的描述中,除非另有说明,“多个”的含义是指至少两个。
[0164] 流程图中或在此以其他方式描述的任何过程或方法描述可以被理解为,表示包括一个或更多个用于实现特定逻辑功能或过程的步骤的可执行指令的代码的模片段或部分,并且本申请的优选实施方式的范围包括另外的实现,其中可以不按所示出或讨论的顺序,包括根据所涉及的功能按基本同时的方式或按相反的顺序,来执行功能,这应被本申请的实施例所属技术领域的技术人员所理解。
[0165] 应当理解,本申请的各部分可以用硬件软件固件或它们的组合来实现。在上述实施方式中,多个步骤或方法可以用存储在存储器中且由合适的指令执行系统执行的软件或固件来实现。例如,如果用硬件来实现,和在另一实施方式中一样,可用本领域公知的下列技术中的任一项或他们的组合来实现:具有用于对数据信号实现逻辑功能的逻辑电路的离散逻辑电路,具有合适的组合逻辑门电路的专用集成电路,可编程门阵列(PGA),现场可编程门阵列(FPGA)等。
[0166] 本技术领域的普通技术人员可以理解实现上述实施例方法携带的全部或部分步骤是可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,该程序在执行时,包括方法实施例的步骤之一或其组合。
[0167] 此外,在本申请各个实施例中的各功能单元可以集成在一个处理模块中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。所述集成的模块如果以软件功能模块的形式实现并作为独立的产品销售或使用时,也可以存储在一个计算机可读取存储介质中。
[0168] 上述提到的存储介质可以是只读存储器,磁盘或光盘等。
[0169] 在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本申请的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不一定指的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任何的一个或多个实施例或示例中以合适的方式结合。
[0170] 尽管上面已经示出和描述了本申请的实施例,可以理解的是,上述实施例是示例性的,不能理解为对本申请的限制,本领域的普通技术人员在本申请的范围内可以对上述实施例进行变化、修改、替换和变型。
高效检索全球专利

专利汇是专利免费检索,专利查询,专利分析-国家发明专利查询检索分析平台,是提供专利分析,专利查询,专利检索等数据服务功能的知识产权数据服务商。

我们的产品包含105个国家的1.26亿组数据,免费查、免费专利分析。

申请试用

分析报告

专利汇分析报告产品可以对行业情报数据进行梳理分析,涉及维度包括行业专利基本状况分析、地域分析、技术分析、发明人分析、申请人分析、专利权人分析、失效分析、核心专利分析、法律分析、研发重点分析、企业专利处境分析、技术处境分析、专利寿命分析、企业定位分析、引证分析等超过60个分析角度,系统通过AI智能系统对图表进行解读,只需1分钟,一键生成行业专利分析报告。

申请试用

QQ群二维码
意见反馈