CN114721969A - 接口自动化测试数据和测试代码分离的方法及装置 - Google Patents

接口自动化测试数据和测试代码分离的方法及装置 Download PDF

Info

Publication number
CN114721969A
CN114721969A CN202210635764.2A CN202210635764A CN114721969A CN 114721969 A CN114721969 A CN 114721969A CN 202210635764 A CN202210635764 A CN 202210635764A CN 114721969 A CN114721969 A CN 114721969A
Authority
CN
China
Prior art keywords
request
test
info
data
assignment
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN202210635764.2A
Other languages
English (en)
Inventor
李雷明
白剑
黄海亮
梁瑛玮
张海林
鲁和平
李长杰
陈焕然
李乐
王浩
洪行健
冷冬
丁一
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Guangzhou Easefun Information Technology Co ltd
Original Assignee
Guangzhou Easefun Information Technology Co ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Guangzhou Easefun Information Technology Co ltd filed Critical Guangzhou Easefun Information Technology Co ltd
Priority to CN202210635764.2A priority Critical patent/CN114721969A/zh
Publication of CN114721969A publication Critical patent/CN114721969A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • G06F11/3668Software testing
    • G06F11/3672Test management
    • G06F11/3684Test management for test design, e.g. generating new test cases
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • G06F11/3668Software testing
    • G06F11/3672Test management
    • G06F11/3688Test management for test execution, e.g. scheduling of test suites

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Quality & Reliability (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Debugging And Monitoring (AREA)

Abstract

本发明提出了接口自动化测试数据和测试代码分离的方法及装置,所述方法包括:根据请求要素的多样性和参数的复杂性,创建测试数据表request_info和请求记录表request_record;遍历request_info筛选符合条件的数据,依次执行测试请求,在单次测试请求之前采用赋值数据进行参数赋值,根据不同类型的参数进行对应轮数的赋值操作;单次测试请求完成后,校验响应测试结果是否符合预期,并将请求和响应写入到请求记录表request_record;输出测试报告。所述装置使用了所述方法。本发明实现了测试数据和测试代码分离,完成数据和代码解耦,使得测试数据设置更加灵活,同时节省了测开资源。

Description

接口自动化测试数据和测试代码分离的方法及装置
技术领域
本发明涉及网络技术领域,具体涉及一种接口自动化测试数据和测试代码分离的方法及装置。
背景技术
现有的接口自动化测试过程中,无法实现测试数据和测试代码的分离,测试过程繁琐复杂,且接口自动化的编写门槛较高,对技术人员的专业水平有较高的要求,同时需要人力频繁介入,增加了公司的人力成本,使得测试资源无法充分利用。
发明内容
针对现有技术的不足,本发明提出一种接口自动化测试数据和测试代码分离的方法及装置,解决了现有技术中接口测试过程繁琐复杂,行业门槛较高,需要人力频繁介入的缺陷。
本发明的技术方案是这样实现的:一种接口自动化测试数据和测试代码分离的方法,包括:
根据请求要素的多样性和参数的复杂性,创建测试数据表request_info和请求记录表request_record;
遍历request_info筛选符合条件的数据,依次执行测试请求,在单次测试请求之前采用赋值数据进行参数赋值,根据不同类型的参数进行对应轮数的赋值操作;
单次测试请求完成后,校验响应测试结果是否符合预期,并将请求和响应写入到请求记录表request_record;
全部接口请求完成,输出测试报告。
进一步,上述所述遍历request_info筛选符合条件的数据,依次执行测试请求,在单次测试请求之前进行参数赋值,根据不同类型的参数进行对应轮数的赋值操作之前,还包括:
按照测试需求在测试数据表request_info中的对应字段添加赋值数据。
进一步,上述所述赋值数据包括测试数据表request_info的param字段,所述根据不同类型的参数进行对应轮数的赋值操作的步骤,包括:
遍历request_info.param,对接口参数赋值,完成参数初始化;
在遍历request_info.param进行参数初始化过程中,当遍历匹配到指定参数key时,根据预设规则,对指定参数key进行对应的赋值操作,所述指定参数key包括timestamp和userid;
当 key = timestamp 时,生成当前时间戳并赋值给timestamp;
当key = userid 时,将指定参数key替换成与测试账号对应的userid。
进一步,上述所述赋值数据包括测试数据表request_info的is_depend字段,所述根据不同类型的参数进行对应轮数的赋值操作的步骤,包括:
按实时创建方式通过type=onTheFly指定,在id_depend中按预设规则添加信息,依次通过type、path和key值,在请求记录表request_record中解析确定业务id,完成替换操作。
进一步,上述所述赋值数据包括测试数据表request_info的ext字段,所述根据不同类型的参数进行对应轮数的赋值操作的步骤,包括:
若存在重复校验的业务参数或日期类参数,对request_info.ext 进行标识,根据预定规则,生成统一格式的参数,进行赋值操作。
进一步,上述所述赋值数据包括测试数据表request_info的is_upload字段,所述根据不同类型的参数进行对应轮数的赋值操作的步骤,包括:
针对文件上传类接口:判断测试数据表request_info中 request_info.content_type 的请求内容类型为multipart/form-data时,在 request_info.is_upload 中录入信息,进行赋值操作。
进一步,上述所述单次测试请求完成后,校验响应测试结果是否符合预期,并将请求和响应写入到请求记录表request_record的步骤,包括:
校验接口响应体是否包含 request_info.expect 的预留信息;
将请求和响应数据写入请求记录表 request_record。
本发明还提供了一种接口自动化测试数据和测试代码分离装置,包括:
创建模块,用于根据请求要素的多样性和参数的复杂性,创建测试数据表request_info和请求记录表request_record;
执行模块,用于遍历request_info筛选符合条件的数据,依次执行测试请求,在单次测试请求之前采用赋值数据进行参数赋值,根据不同类型的参数进行对应轮数的赋值操作;
校验模块,用于单次测试请求完成后,校验响应测试结果是否符合预期,并将请求和响应写入到请求记录表request_record;
输出模块,用于在全部接口请求完成后,输出测试报告。
进一步,上述所述装置于遍历request_info筛选符合条件的数据,依次执行测试请求,在单次测试请求之前进行参数赋值,根据不同类型的参数进行对应轮数的赋值操作之前,按照测试需求在测试数据表request_info中的对应字段添加赋值数据。
进一步,上述所述校验模块,具体用于:
校验接口响应体是否包含 request_info.expect 的预留信息;
将请求和响应数据写入请求记录表 request_record。
本发明实施例通过创建测试数据表request_info和请求记录表request_record,遍历request_info筛选符合条件的数据,依次执行测试请求,在单次测试请求之前采用赋值数据进行参数赋值,根据不同类型的参数进行对应轮数的赋值操作,实现测试数据和测试代码分离,完成数据和代码解耦,使得测试数据设置更加灵活,同时,本发明的赋值数据可以根据用户的需求实时进行调整,用户只需要对测试数据表request_info和请求记录表request_record进行适应性更改即可,降低了接口自动化的编写门槛,另外,本发明实施例的测试数据可以由业务测试人员添加维护,节省测开资源,使测试资源得以最大化利用,降低了公司的人力成本。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为本发明第一实施例和第二实施例的测试数据表request_info的表结构的截图;
图2为发明第一实施例和第二实施例的请求记录表request_record的表结构的截图;
图3为发明第一实施例的一种接口自动化测试数据和测试代码分离的方法的流程图;
图4为本发明第二实施例的一种接口自动化测试数据和测试代码分离的方法的流程图;
图5为本发明第三实施例的一种接口自动化测试数据和测试代码分离装置的结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例,众所周知的模块、单元及其相互之间的连接、链接、通信或操作没有示出或未作详细说明。并且,所描述的特征、架构或功能可在一个或一个以上实施方式中以任何方式组合。本领域技术人员应当理解,下述的各种实施方式只用于举例说明,而非用于限制本发明的保护范围。还可以容易理解,本文所述和附图所示的各实施方式中的模块或单元或处理方式可以按各种不同配置进行组合和设计。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
以下结合附图和具体实施方式对本发明的各个方面进行详细阐述。
首先,对本发明可能涉及的名词及缩写及进行解释:
数据表:
request_info:请求数据表,接口请求所需的数据集合,包括域名、路径、方法、类型、参数等;
request_record:请求记录表,包括接口的请求信息和响应信息等;
user_info:账号数据表,包括账号配置信息,userid、登录密码、认证cookie等;
request_info.x :x为数据表的具体字段,可参考附图1中的表结构;
请求类:Java - CloseableHttpClient请求类;
参数字段:
timestamp:时间戳;
userid:测试账号的用户id。
第一实施例:
请参照图1至图3所示,本发明实施例公开了一种接口自动化测试数据和测试代码分离的方法,包括:
S11,根据请求要素的多样性和参数的复杂性,创建测试数据表request_info和请求记录表request_record。
因请求要素的多样性和参数的复杂性,测试数据表request_info在设计时需要考虑很多因素,请参照图1,包括但不限于:
请求方法:get、post等;
请求类型:application/x-www-form-urlencoded、application/json、multipart/form-data;
认证方式:登录验证(cookie或session)、签名验证等;
参数类型:路径参数、请求参数,请求参数又可分为:可变参数(有无规则、是否强业务依赖)、上传接口文件参数(fileName和filePath)等;
响应格式:json格式、文本、二进制文件;
断言:预期结果;
其他:业务依赖关系中,同业务参数在不同接口不同命名的情况等。
S12,遍历request_info筛选符合条件的数据,依次执行测试请求,在单次测试请求之前采用赋值数据进行参数赋值,根据不同类型的参数进行对应轮数的赋值操作。
通常情况下,根据不同类型的参数会进行3至4轮赋值,可以有效解决所有类型参数的赋值问题。
S13,单次测试请求完成后,校验响应测试结果是否符合预期,并将请求和响应写入到请求记录表request_record。
技术人员可以单独设置接口的预期结果,以提高接口校验的准确率。
S14,全部接口请求完成,输出测试报告。
本发明实施例通过创建测试数据表request_info和请求记录表request_record,遍历request_info筛选符合条件的数据,依次执行测试请求,在单次测试请求之前采用赋值数据进行参数赋值,根据不同类型的参数进行对应轮数的赋值操作,使得测试数据和测试代码分离,完成数据和代码解耦,使得测试数据设置更加灵活,同时,本发明的赋值数据可以根据用户的需求实时进行调整,用户只需要对测试数据表request_info和请求记录表request_record进行适应性更改即可,降低了接口自动化的编写门槛,另外,本发明实施例的测试数据可以由业务测试人员添加维护,节省测开资源,使测试资源得以最大化利用,降低了公司的人力成本。
第二实施例:
请参照图1、图2和图4所示,本发明实施例公开了另一种接口自动化测试数据和测试代码分离的方法,包括:
S21,根据请求要素的多样性和参数的复杂性,创建测试数据表request_info和请求记录表request_record。
S21与第一实施例的对应步骤相同,在此不再赘诉。
作为一种改进方案而非限定,本实施例S21还包括创建账号配置表user_info。
S22,按照测试需求在测试数据表request_info中的对应字段添加赋值数据。
在针对不同接口测试任务时,业务测试人员可以根据测试需求在测试数据表request_info中的对应字段添加赋值数据,以使得本实施例可以降低接口自动化的编写门槛,在减少重复开发的前提下提升接口测试的适用范围。
S23,遍历request_info筛选符合条件的数据,依次执行测试请求,在单次测试请求之前采用赋值数据进行参数赋值,根据不同类型的参数进行对应轮数的赋值操作。
作为一种具体方案而非限定,本步骤对应于S21中的账号配置表user_info,所述赋值数据包括账号配置表user_info的userid字段,所述根据不同类型的参数进行对应轮数的赋值操作的步骤,包括:
测试账号相关的标识性字段,设置请求地址时,通过占位符完成替换。如:将路径中usreid替换成和账号相匹配的userid。
作为一种具体方案而非限定,上述所述赋值数据包括测试数据表request_info的param字段,所述根据不同类型的参数进行对应轮数的赋值操作的步骤,包括:
遍历request_info.param,对接口参数赋值,完成参数初始化;
在遍历request_info.param进行参数初始化过程中,当遍历匹配到指定参数key时,根据预设规则,对指定参数key进行对应的赋值操作,所述指定参数key包括timestamp和userid;
当 key = timestamp 时,生成当前时间戳并赋值给timestamp;
当key = userid 时,将指定参数key替换成与测试账号对应的userid。
作为一种具体方案而非限定,上述所述赋值数据包括测试数据表request_info的is_depend字段,所述根据不同类型的参数进行对应轮数的赋值操作的步骤,包括:
按实时创建方式通过type=onTheFly指定,在id_depend中按预设规则添加信息,依次通过type、path和key值,在请求记录表request_record中解析确定业务id,完成替换操作。
如:
1.通过type = OnTheFly,对应请求接口为/v2/document/detail.do和 /v2/document/list.do;
2.分别在request_record中查找对应接口的最新记录,分别按照data.autoId 和data.contents[].fileId 格式,解析request_record中的response_body解析获取到业务id;
3.使用解析后业务id,替换参数中原业务id的值;
4.当解析到的业务id参数的key和当前接口中的key不一致时,可通过realKey来指定当前接口请求key。比如响应中参数格式为:autoid=value,而当前接口中的格式为autoId=value,即可以通过realKey来指定当前接口的真正参数。
具体数据如下:
{
"type": "OnTheFly",
"outOfBox":
{
"path": ""
},
"OnTheFly": [
{
"path": "/v2/document/detail.do",
"key": "data.autoId",
"realKey": "autoid"
},
{
"path": "/v2/document/list.do",
"key": "data.contents[].fileId"
}]
}
备注:
type:数据依赖类型;
outOfBox:提前准备;
OnTheFly:实时创建;
path:接口路径;
key:需要赋值的指定参数key;
realKey:接口请求的真正参数,区别于解析响应体中的参数;
data.contents[].fileId:数据解析格式data表示json格式,[]表示json数组,默认取第一个。
作为一种具体方案而非限定,上述所述赋值数据包括测试数据表request_info的ext字段,所述根据不同类型的参数进行对应轮数的赋值操作的步骤,包括:
若存在重复校验的业务参数或日期类参数,对request_info.ext 进行标识,根据预定规则,生成统一格式的参数,进行赋值操作。
如:
1.有重复性校验的业务参数:解决value重复问题,解决幂等场景下的接口报错,可采用时间戳方式,设置value=realTime,格式是{"cataname":"realTime"},当匹配到value=realTime,借助时间戳生成新的值避免名称重复。newKey = key + "yyyy-MM-ddHH:mm:ss";
日期类参数:解决日期问题,日期默认为当天,格式是{"date":"yyyy-MM-dd"},匹配到 value=yyyy-MM-dd,按日期格式生成当天的字符串,newKey = 当天的日期,格式yyyy-MM-dd。
作为一种具体方案而非限定,上述所述赋值数据包括测试数据表request_info的is_upload字段,所述根据不同类型的参数进行对应轮数的赋值操作的步骤,包括:
针对文件上传类接口:判断测试数据表request_info中 request_info.content_type 的请求内容类型为multipart/form-data时,在 request_info.is_upload 中录入信息,进行赋值操作。
具体数据如下:
[
{
"fileName": "ppt",
"filePath": "\\polyv\\doc\\pptx一.pptx"
},
{
"fileName": "txt",
"filePath": "\\polyv\\doc\\上传ppt124行 txt.txt"
}
]
备注:
fileName:文件类参数对应的文件参数名;
filePath:测试服务器,测试文件的路径。
S24,校验接口响应体是否包含 request_info.expect 的预留信息。
S25,将请求和响应数据写入请求记录表 request_record。
本发明实施例使得在针对不同接口测试任务时,业务测试人员可以根据测试需求在测试数据表request_info中的对应字段添加赋值数据,可以进一步降低接口自动化的编写门槛。同时提出了一种可针对参数类型包含路径参数、请求参数、参数名相对固定且有明确生成规则的可变参数、强业务依赖可变参数、弱业务依赖可变参数和文件上传参数的接口自动化测试数据和测试代码分离的方法,在减少重复开发的前提下极大的提升了本发明实施例的接口测试的适用范围。
第三实施例:
请参照图5所示,本发明还提供了一种接口自动化测试数据和测试代码分离装置100,包括创建模块110、执行模块120、校验模块130和输出模块140,其中:
创建模块110,与执行模块120连接,用于根据请求要素的多样性和参数的复杂性,创建测试数据表request_info和请求记录表request_record;
执行模块120,与校验模块130连接,用于遍历request_info筛选符合条件的数据,依次执行测试请求,在单次测试请求之前采用赋值数据进行参数赋值,根据不同类型的参数进行对应轮数的赋值操作;
校验模块130,与输出模块140连接,用于单次测试请求完成后,校验响应测试结果是否符合预期,并将请求和响应写入到请求记录表request_record;
输出模块140,用于在全部接口请求完成后,输出测试报告。
在本发明的实施方式中,所述装置于遍历request_info筛选符合条件的数据,依次执行测试请求,在单次测试请求之前进行参数赋值,根据不同类型的参数进行对应轮数的赋值操作之前,按照测试需求在测试数据表request_info中的对应字段添加赋值数据。
在本发明的实施方式中,所述校验模块130,具体用于:
校验接口响应体是否包含 request_info.expect 的预留信息;
将请求和响应数据写入请求记录表 request_record。
本实施例的模块与上述两个方法实施例中的步骤一一对应,在此不再赘诉。
本发明实施例通过创建测试数据表request_info和请求记录表request_record,遍历request_info筛选符合条件的数据,依次执行测试请求,在单次测试请求之前采用赋值数据进行参数赋值,根据不同类型的参数进行对应轮数的赋值操作,使得测试数据和测试代码分离,完成数据和代码解耦,使得测试数据设置更加灵活,同时,本发明的赋值数据可以根据用户的需求实时进行调整,用户只需要对测试数据表request_info和请求记录表request_record进行适应性更改即可,降低了接口自动化的编写门槛,另外,本发明实施例的测试数据可以由业务测试人员添加维护,节省测开资源,使测试资源得以最大化利用,降低了公司的人力成本。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将装置的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。上述描述的系统,装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在本申请所提供的几个实施例中,应该理解到,所揭露装置和方法,可以通过其它的方式实现。例如,以上所描述的装置的实施例仅仅是示意性的,所述模块或单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)或处理器(processor)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

Claims (10)

1.一种接口自动化测试数据和测试代码分离的方法,其特征在于,包括:
根据请求要素的多样性和参数的复杂性,创建测试数据表request_info和请求记录表request_record;
遍历request_info筛选符合条件的数据,依次执行测试请求,在单次测试请求之前采用赋值数据进行参数赋值,根据不同类型的参数进行对应轮数的赋值操作;
单次测试请求完成后,校验响应测试结果是否符合预期,并将请求和响应写入到请求记录表request_record;
全部接口请求完成,输出测试报告。
2.如权利要求1所述的方法,其特征在于,所述遍历request_info筛选符合条件的数据,依次执行测试请求,在单次测试请求之前进行参数赋值,根据不同类型的参数进行对应轮数的赋值操作之前,还包括:
按照测试需求在测试数据表request_info中的对应字段添加赋值数据。
3.如权利要求2所述的方法,其特征在于,所述赋值数据包括测试数据表request_info的param字段,所述根据不同类型的参数进行对应轮数的赋值操作的步骤,包括:
遍历request_info.param,对接口参数赋值,完成参数初始化;
在遍历request_info.param进行参数初始化过程中,当遍历匹配到指定参数key时,根据预设规则,对指定参数key进行对应的赋值操作,所述指定参数key包括timestamp和userid;
当 key = timestamp 时,生成当前时间戳并赋值给timestamp;
当key = userid 时,将指定参数key替换成与测试账号对应的userid。
4.如权利要求3所述的方法,其特征在于,所述赋值数据包括测试数据表request_info的is_depend字段,所述根据不同类型的参数进行对应轮数的赋值操作的步骤,包括:
按实时创建方式通过type=onTheFly指定,在id_depend中按预设规则添加信息,依次通过type、path和key值,在请求记录表request_record中解析确定业务id,完成替换操作。
5.如权利要求4所述的方法,其特征在于,所述赋值数据包括测试数据表request_info的ext字段,所述根据不同类型的参数进行对应轮数的赋值操作的步骤,包括:
若存在重复校验的业务参数或日期类参数,对request_info.ext 进行标识,根据预定规则,生成统一格式的参数,进行赋值操作。
6.如权利要求5所述的方法,其特征在于,所述赋值数据包括测试数据表request_info的is_upload字段,所述根据不同类型的参数进行对应轮数的赋值操作的步骤,包括:
针对文件上传类接口:判断测试数据表request_info中 request_info.content_type的请求内容类型为multipart/form-data时,在 request_info.is_upload 中录入信息,进行赋值操作。
7.如权利要求6所述的方法,其特征在于,所述单次测试请求完成后,校验响应测试结果是否符合预期,并将请求和响应写入到请求记录表request_record的步骤,包括:
校验接口响应体是否包含 request_info.expect 的预留信息;
将请求和响应数据写入请求记录表 request_record。
8.一种接口自动化测试数据和测试代码分离的装置,其特征在于,包括:
创建模块,用于根据请求要素的多样性和参数的复杂性,创建测试数据表request_info和请求记录表request_record;
执行模块,用于遍历request_info筛选符合条件的数据,依次执行测试请求,在单次测试请求之前采用赋值数据进行参数赋值,根据不同类型的参数进行对应轮数的赋值操作;
校验模块,用于单次测试请求完成后,校验响应测试结果是否符合预期,并将请求和响应写入到请求记录表request_record;
输出模块,用于在全部接口请求完成后,输出测试报告。
9.如权利要求8所述的装置,其特征在于,所述装置于遍历request_info筛选符合条件的数据,依次执行测试请求,在单次测试请求之前进行参数赋值,根据不同类型的参数进行对应轮数的赋值操作之前,按照测试需求在测试数据表request_info中的对应字段添加赋值数据。
10.如权利要求9所述的装置,其特征在于,所述校验模块,具体用于:
校验接口响应体是否包含 request_info.expect 的预留信息;
将请求和响应数据写入请求记录表 request_record。
CN202210635764.2A 2022-06-07 2022-06-07 接口自动化测试数据和测试代码分离的方法及装置 Pending CN114721969A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202210635764.2A CN114721969A (zh) 2022-06-07 2022-06-07 接口自动化测试数据和测试代码分离的方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202210635764.2A CN114721969A (zh) 2022-06-07 2022-06-07 接口自动化测试数据和测试代码分离的方法及装置

Publications (1)

Publication Number Publication Date
CN114721969A true CN114721969A (zh) 2022-07-08

Family

ID=82233086

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202210635764.2A Pending CN114721969A (zh) 2022-06-07 2022-06-07 接口自动化测试数据和测试代码分离的方法及装置

Country Status (1)

Country Link
CN (1) CN114721969A (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117349185A (zh) * 2023-12-04 2024-01-05 杭银消费金融股份有限公司 一种基于接口强弱依赖分级的系统测试方法

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110297774A (zh) * 2019-07-02 2019-10-01 四川长虹电器股份有限公司 一种基于python的接口自动化测试方法
CN110309071A (zh) * 2019-06-27 2019-10-08 杭州数梦工场科技有限公司 测试代码的生成方法及模块、测试方法及系统
CN110968505A (zh) * 2019-11-15 2020-04-07 烟台中科网络技术研究所 一种api接口的自动化测试方法和系统
CN111767221A (zh) * 2020-06-28 2020-10-13 北京百度网讯科技有限公司 接口测试方法、装置、设备以及存储介质
CN112327798A (zh) * 2020-10-22 2021-02-05 交控科技股份有限公司 列车系统测试方法、装置、电子设备及存储介质
CN113127280A (zh) * 2021-04-14 2021-07-16 北京优奥创思科技发展有限公司 一种api接口自动化录入方法及系统
CN113806216A (zh) * 2021-08-12 2021-12-17 浙江吉利控股集团有限公司 接口测试方法、装置、介质及设备
CN114138674A (zh) * 2021-12-20 2022-03-04 南京星云数字技术有限公司 自动化测试方法、装置及计算机设备

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110309071A (zh) * 2019-06-27 2019-10-08 杭州数梦工场科技有限公司 测试代码的生成方法及模块、测试方法及系统
CN110297774A (zh) * 2019-07-02 2019-10-01 四川长虹电器股份有限公司 一种基于python的接口自动化测试方法
CN110968505A (zh) * 2019-11-15 2020-04-07 烟台中科网络技术研究所 一种api接口的自动化测试方法和系统
CN111767221A (zh) * 2020-06-28 2020-10-13 北京百度网讯科技有限公司 接口测试方法、装置、设备以及存储介质
CN112327798A (zh) * 2020-10-22 2021-02-05 交控科技股份有限公司 列车系统测试方法、装置、电子设备及存储介质
CN113127280A (zh) * 2021-04-14 2021-07-16 北京优奥创思科技发展有限公司 一种api接口自动化录入方法及系统
CN113806216A (zh) * 2021-08-12 2021-12-17 浙江吉利控股集团有限公司 接口测试方法、装置、介质及设备
CN114138674A (zh) * 2021-12-20 2022-03-04 南京星云数字技术有限公司 自动化测试方法、装置及计算机设备

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117349185A (zh) * 2023-12-04 2024-01-05 杭银消费金融股份有限公司 一种基于接口强弱依赖分级的系统测试方法
CN117349185B (zh) * 2023-12-04 2024-02-23 杭银消费金融股份有限公司 一种基于接口强弱依赖分级的系统测试方法

Similar Documents

Publication Publication Date Title
CN105159833A (zh) 自动化测试装置及方法
CN110750458A (zh) 大数据平台测试方法、装置、可读存储介质及电子设备
CN110933095A (zh) 一种报文解析方法及装置
CN113419747B (zh) 中间件部署方法、装置、设备及存储介质
CN109683997B (zh) 通过沙箱访问应用程序接口的方法、沙箱及沙箱设备
US10803166B1 (en) Automated determination of application privileges
CN112241360A (zh) 一种测试用例生成方法、装置、设备及存储介质
CN109783357A (zh) 测试应用程序的方法及装置、计算机设备、存储介质
CN114721969A (zh) 接口自动化测试数据和测试代码分离的方法及装置
CN102025555B (zh) Ip多媒体子系统性能测试的方法
TWI626538B (zh) 基礎架構規則產生技術
CN111930625B (zh) 基于云服务平台的日志获取方法、装置及系统
US10055516B1 (en) Testing open mobile alliance server payload on an open mobile alliance client simulator
CN113886221B (zh) 测试脚本生成方法、装置、存储介质及电子设备
CN116431522A (zh) 一种低代码对象存储网关自动化测试方法及系统
CN113031995B (zh) 一种更新规则的方法、装置、存储介质以及电子设备
CN103019927A (zh) 一种性能测试方法和系统
CN112527584A (zh) 基于脚本编写及数据采集的软件效能提升方法和系统
CN112416750A (zh) 应用程序边界测试方法及系统
CN111813665A (zh) 一种基于python的大数据平台接口数据测试方法和系统
CN110740134A (zh) 一种url鉴权测试方法、装置、设备及介质
CN111082984A (zh) 模拟登录网络设备进行命令行交互的方法和装置
CN110650063A (zh) 一种集中式的银行第三方软件仿真系统及方法
CN110399298A (zh) 一种测试方法及装置
CN117271298A (zh) 测试方法和设备

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
RJ01 Rejection of invention patent application after publication

Application publication date: 20220708

RJ01 Rejection of invention patent application after publication