接口管理平台的数据测试方法和系统

文档序号:1963651 发布日期:2021-12-14 浏览:11次 >En<

阅读说明:本技术 接口管理平台的数据测试方法和系统 (Data testing method and system of interface management platform ) 是由 陈兆祺 邱全志 马元巍 侯大为 潘正颐 于 2021-11-15 设计创作,主要内容包括:本发明提供了一种接口管理平台的数据测试方法和系统,其中,该方法包括以下步骤:登录接口管理平台并根据调用请求获取接口管理平台的接口信息;对接口信息进行数据整理和清洗;将整理和清洗后的接口信息转存为pytest框架可用的yaml文件;根据yaml文件生成pytest测试脚本的py文件;调用pytest的测试命令运行相应的py文件对接口信息进行测试,并根据测试结果生成相应的Allure报告。根据本发明的接口管理平台的数据测试方法,能够有效地避免出现数据不同源的问题,从而确保了测试系统的准确性和可靠性。(The invention provides a data testing method and a system of an interface management platform, wherein the method comprises the following steps: logging in an interface management platform and acquiring interface information of the interface management platform according to the calling request; data arrangement and cleaning are carried out on the interface information; the interface information after being sorted and cleaned is transferred and stored into a yaml file available for the pytest framework; generating a py file of the pytest test script according to the yaml file; and calling a test command of the pytest to run a corresponding py file to test the interface information, and generating a corresponding Allure report according to a test result. According to the data testing method of the interface management platform, the problem of different data sources can be effectively avoided, so that the accuracy and the reliability of a testing system are ensured.)

接口管理平台的数据测试方法和系统

技术领域

本发明涉及数据测试技术领域,具体涉及一种接口管理平台的数据测试方法和一种接口管理平台的数据测试系统。

背景技术

相关技术中,在对接口管理平台输出的数据信息进行检测时,存在数据不同源的问题,从而使得实际测试结果与开发结果不一致,大大降低了测试系统的准确性和可靠性。

发明内容

本发明为解决上述技术问题,提供了一种接口管理平台的数据测试方法,能够有效地避免出现数据不同源的问题,从而确保了测试系统的准确性和可靠性。

本发明采用的技术方案如下:

一种接口管理平台的数据测试方法,包括以下步骤:登录接口管理平台并根据调用请求获取所述接口管理平台的接口信息;对所述接口信息进行数据整理和清洗;将整理和清洗后的接口信息转存为pytest框架可用的yaml文件;根据所述yaml文件生成pytest测试脚本的py文件;调用pytest的测试命令运行相应的所述py文件对所述接口信息进行测试,并根据测试结果生成相应的Allure报告。

所述对所述接口信息进行数据整理和清洗,包括:整理所述接口信息中相关数据发送的url地址;整理所述接口信息中相关请求的发送形式;整理发送请求头文件和所述接口信息中数据的参数、格式和类型;整理预期响应结果信息的参数、格式和类型;整理其他备注信息、接口创建者信息和参数描述信息。

所述根据所述yaml文件生成pytest测试脚本的py文件,包括:读取所述yaml文件;整理测试模板并创建初始测试数据;根据所述yaml文件中所述整理和清洗后的接口信息以及所述测试模板和所述初始测试数据写入所述pytest测试脚本的所述py文件。

在对所述接口信息进行数据整理和清洗之后,还包括:登录用例管理平台,并获取接口用例;判断所述接口用例是否存在;如果所述接口用例未存在,则创建所述接口用例;所述接口用例存在,则判断所述接口用例的更新时间是否早于接口更新时间;如果所述接口用例的更新时间早于接口更新时间,则更新所述接口用例。

一种接口管理平台的数据测试系统,包括:获取模块,所述获取模块用于登录接口管理平台并根据调用请求获取所述接口管理平台的接口信息;数据整理和清洗模块,所述数据整理和清洗模块用于对所述接口信息进行数据整理和清洗;接口信息转存模块,所述接口信息转存模块用于将整理和清洗后的接口信息转存为pytest框架可用的yaml文件;文件生成模块,所述文件生成模块用于根据所述yaml文件生成pytest测试脚本的py文件;测试模块,所述测试模块用于调用pytest的测试命令运行相应的所述py文件对所述接口信息进行测试,并根据测试结果生成相应的Allure报告。

一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时,实现上述的接口管理平台的数据测试方法。

一种非临时性计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现上述的接口管理平台的数据测试方法。

本发明的有益效果:

本发明能够有效地避免出现数据不同源的问题,从而确保了测试系统的准确性和可靠性。

附图说明

图1为本发明实施例的接口管理平台的数据测试方法的流程图;

图2为本发明一个实施例的接口管理平台的数据测试方法的逻辑示意图;

图3为本发明实施例的接口管理平台的数据测试系统的方框示意图。

具体实施方式

下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

图1是根据本发明实施例的接口管理平台的数据测试方法的流程图。

如图1所示,本发明实施例的接口管理平台的数据测试方法可包括以下步骤:

S1,登录接口管理平台并根据调用请求获取接口管理平台的接口信息。

具体而言,如图2所示,可先进行接口信息采集。启动任务后,可适配接口管理平台并登录接口管理平台,其中,可通过手动或者任务自动调度的方式登录接口管理平台。然后,根据调用请求获取接口管理平台输出的接口信息。

需要说明的是,在登录接口管理平台之前,还可通过身份认证信息(例如,登录账号、权限码等信息)进行身份认证以获取登录接口管理平台以及调用接口管理平台输出的接口信息的权限,只有在成功获取到登录权限后,可登录接口管理平台,并获取相应的接口信息。

S2,对接口信息进行数据整理和清洗。

根据本发明的一个实施例,对接口信息进行数据整理和清洗,包括:整理接口信息中相关数据发送的url地址;整理接口信息中相关请求的发送形式;整理发送请求头文件和接口信息中数据的参数、格式和类型;整理预期响应结果信息的参数、格式和类型;整理其他备注信息、接口创建者信息和参数描述信息。

具体而言,如图2所示,进行接口信息的数据整理清洗。其中,可整理接口信息中相关数据发送的url地址,以及整理接口信息中相关请求的发送形式,例如,POST、GET、PUT、DELETE等方式,并整理发送请求头文件(例如,HEADERS文件)和接口信息中数据(例如,QUERY、FORM DATA、BODY等数据)的参数、格式和类型,以及整理预期响应结果信息(例如,RESPONSE)的参数、格式和类型,并整理其他备注信息、接口创建者信息和参数描述信息。

需要说明的是,在信息数据整理过程中,还可清洗对测试数据无用的信息,例如,其他备注信息、接口创建者信息等。

S3,将整理和清洗后的接口信息转存为pytest框架可用的yaml文件。

具体而言,如图2所示,根据业务分发,即根据实际测试业务将整理和清洗后的接口信息转存为pytest框架可用的yaml文件。

根据本发明的一个实施例,在对接口信息进行数据整理和清洗之后,还包括:登录用例管理平台,并获取接口用例;判断接口用例是否存在;如果接口用例未存在,则创建接口用例;接口用例存在,则判断接口用例的更新时间是否早于接口更新时间;如果接口用例的更新时间早于接口更新时间,则更新接口用例。

具体而言,如图2所示,适配用例管理平台并登录该用例管理平台,其中,可通过身份认证信息(例如,登录账号、权限码等信息)进行身份认证以获取登录用例管理平台的权限,只有在成功获取到登录权限后,可登录用例管理平台。在登录用例管理平台后,可获取接口用例,然后,判断接口用例是否存在。如果接口用例不存在,则创建接口用例;如果接口用例存在,则判断该接口用例的更新时间是否早于接口更新时间。如果接口用例的更新时间早于接口更新时间,则更新接口用例;如果接口用例的更新时间不早于接口更新时间,则不作处理。

由此,通过整合自动测试录入用例管理平台一体化,使得测试成员验收更加便捷,从而达到把调整接口工作放在接口管理平台上即可同步改变测试用例的作用。

S4,根据yaml文件生成pytest测试脚本的py文件。

根据本发明的一个实施例,根据yaml文件生成pytest测试脚本的py文件,包括:读取yaml文件;整理测试模板并创建初始测试数据;根据yaml文件中整理和清洗后的接口信息以及测试模板和初始测试数据写入pytest测试脚本的py文件。

具体而言,如图2所示,进行脚本读取转化,对yaml文件进行读取并转变成可以命令执行的pytest测试脚本的py文件。

具体地,在读取yaml文件后,可整理测试模板并创建初始化测试数据,并整理接口数据和预期结果,然后,根据yaml文件中整理和清洗后的接口信息以及测试模板和初始测试数据写入pytest测试脚本的py文件。最后,可将py文件放入指定文件夹,即放入运行文件夹。

S5,调用pytest的测试命令运行相应的py文件对接口信息进行测试,并根据测试结果生成相应的Allure报告。

具体而言,如图2所示,自动运行测试,即自动调用pytest的测试命令运行相应的py文件对接口信息进行测试,并在测试过程中记录相应的测试数据和结果,以及在测试结束后产生Allure报告数据,通过页面或者后台进行展示。

由此,本发明建立了一种计算机web软件系统的自动化测试方法,使用requests(HTTP协议组件)、json(Json数据格式组件)、xlwt(Excel文件写入模块)、shutil(文件和文件集合的高级操作模块)、yaml(Yaml配置解析组件)和pytest(Python测试框架),并且集成Allure组件(轻量级开源测试报告框架),对计算机web软件的接口管理平台的产出(接口信息),进行统一化功能测试、回归测试和接口文档规整,并且具有录入用例管理平台的作用。从而有效地解决了长期以往开发维护接口管理平台,测试用例管理平台和自动化脚本中存在的输入不同源导致实际测试结果和开发结果不一致的问题,并且将系统部署在Jenkins上时,定时可以对开发在接口管理平台上的更改项作出相应往自动化测试脚本和用例的自动调整,避免了测试由于没有关注到细微的更改而导致自动化测试接口与实际场景出现偏差的情况。

综上所述,根据本发明实施例的接口管理平台的数据测试方法,登录接口管理平台并根据调用请求获取接口管理平台的接口信息,并对接口信息进行数据整理和清洗,以及将整理和清洗后的接口信息转存为pytest框架可用的yaml文件,并根据yaml文件生成pytest测试脚本的py文件,以及调用pytest的测试命令运行相应的py文件对接口信息进行测试,并根据测试结果生成相应的Allure报告。由此,能够有效地避免出现数据不同源的问题,从而确保了测试系统的准确性和可靠性。

对应上述实施例的接口管理平台的数据测试方法,本发明还提出一种接口管理平台的数据测试系统。

如图3所示,本发明实施例的接口管理平台的数据测试系统可包括:获取模块100、数据整理和清洗模块200、接口信息转存模块300、文件生成模块400和测试模块500。

其中,获取模块100用于登录接口管理平台并根据调用请求获取接口管理平台的接口信息;数据整理和清洗模块200用于对接口信息进行数据整理和清洗;接口信息转存模块300用于将整理和清洗后的接口信息转存为pytest框架可用的yaml文件;文件生成模块400用于根据yaml文件生成pytest测试脚本的py文件;测试模块500用于调用pytest的测试命令运行相应的py文件对接口信息进行测试,并根据测试结果生成相应的Allure报告。

根据本发明的一个实施例,数据整理和清洗模块200具体用于:整理接口信息中相关数据发送的url地址;整理接口信息中相关请求的发送形式;整理发送请求头文件和接口信息中数据的参数、格式和类型;整理预期响应结果信息的参数、格式和类型;整理其他备注信息、接口创建者信息和参数描述信息。

根据本发明的一个实施例,文件生成模块400具体用于:读取yaml文件;整理测试模板并创建初始测试数据;根据yaml文件中整理和清洗后的接口信息以及测试模板和初始测试数据写入pytest测试脚本的py文件。

根据本发明的一个实施例,接口信息转存模块300在数据整理和清洗模块200对接口信息进行数据整理和清洗之后,还用于:登录用例管理平台,并获取接口用例;判断接口用例是否存在;如果接口用例未存在,则创建接口用例;接口用例存在,则判断接口用例的更新时间是否早于接口更新时间;如果接口用例的更新时间早于接口更新时间,则更新接口用例。

需要说明的是,本发明实施例的接口管理平台的数据测试系统更具体的实施方式可参照上述接口管理平台的数据测试方法的实施例,在此不再赘述。

根据本发明实施例的接口管理平台的数据测试系统,通过获取模块登录接口管理平台并根据调用请求获取接口管理平台的接口信息,以及通过数据整理和清洗模块对接口信息进行数据整理和清洗,并通过接口信息转存模块将整理和清洗后的接口信息转存为pytest框架可用的yaml文件,以及通过文件生成模块根据yaml文件生成pytest测试脚本的py文件,并通过测试模块用于调用pytest的测试命令运行相应的py文件对接口信息进行测试,以及根据测试结果生成相应的Allure报告。由此,能够有效地避免出现数据不同源的问题,从而确保了测试系统的准确性和可靠性。

对应上述实施例,本发明还提出一种计算机设备。

本发明实施例的计算机设备包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,处理器执行程序时,实现上述实施例的接口管理平台的数据测试方法。

根据本发明实施例的计算机设备,能够有效地避免出现数据不同源的问题,从而确保了测试系统的准确性和可靠性。

对应上述实施例,本发明还提出一种非临时性计算机可读存储介质。

本发明实施例的非临时性计算机可读存储介质上存储有计算机程序,该程序被处理器执行时实现上述的接口管理平台的数据测试方法。

根据本发明实施例的非临时性计算机可读存储介质,能够有效地避免出现数据不同源的问题,从而确保了测试系统的准确性和可靠性。

在本发明的描述中,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括一个或者更多个该特征。“多个”的含义是两个或两个以上,除非另有明确具体的限定。

在本发明中,除非另有明确的规定和限定,术语“安装”、“相连”、“连接”、“固定”等术语应做广义理解,例如,可以是固定连接,也可以是可拆卸连接,或成一体;可以是机械连接,也可以是电连接;可以是直接相连,也可以通过中间媒介间接相连,可以是两个元件内部的连通或两个元件的相互作用关系。对于本领域的普通技术人员而言,可以根据具体情况理解上述术语在本发明中的具体含义。

在本发明中,除非另有明确的规定和限定,第一特征在第二特征“上”或“下”可以是第一和第二特征直接接触,或第一和第二特征通过中间媒介间接接触。而且,第一特征在第二特征“之上”、“上方”和“上面”可是第一特征在第二特征正上方或斜上方,或仅仅表示第一特征水平高度高于第二特征。第一特征在第二特征“之下”、“下方”和“下面”可以是第一特征在第二特征正下方或斜下方,或仅仅表示第一特征水平高度小于第二特征。

在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本发明的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不必针对相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任一个或多个实施例或示例中以合适的方式结合。此外,在不相互矛盾的情况下,本领域的技术人员可以将本说明书中描述的不同实施例或示例以及不同实施例或示例的特征进行结合和组合。

流程图中或在此以其他方式描述的任何过程或方法描述可以被理解为,表示包括一个或更多个用于实现特定逻辑功能或过程的步骤的可执行指令的代码的模块、片段或部分,并且本发明的优选实施方式的范围包括另外的实现,其中可以不按所示出或讨论的顺序,包括根据所涉及的功能按基本同时的方式或按相反的顺序,来执行功能,这应被本发明的实施例所属技术领域的技术人员所理解。

在流程图中表示或在此以其他方式描述的逻辑和/或步骤,例如,可以被认为是用于实现逻辑功能的可执行指令的定序列表,可以具体实现在任何计算机可读介质中,以供指令执行系统、装置或设备(如基于计算机的系统、包括处理器的系统或其他可以从指令执行系统、装置或设备取指令并执行指令的系统)使用,或结合这些指令执行系统、装置或设备而使用。就本说明书而言,“计算机可读介质”可以是任何可以包含、存储、通信、传播或传输程序以供指令执行系统、装置或设备或结合这些指令执行系统、装置或设备而使用的装置。计算机可读介质的更具体的示例(非穷尽性列表)包括以下:具有一个或多个布线的电连接部(电子装置),便携式计算机盘盒(磁装置),随机存取存储器(RAM),只读存储器(ROM),可擦除可编辑只读存储器(EPROM或闪速存储器),光纤装置,以及便携式光盘只读存储器(CDROM)。另外,计算机可读介质甚至可以是可在其上打印所述程序的纸或其他合适的介质,因为可以例如通过对纸或其他介质进行光学扫描,接着进行编辑、解译或必要时以其他合适方式进行处理来以电子方式获得所述程序,然后将其存储在计算机存储器中。

应当理解,本发明的各部分可以用硬件、软件、固件或它们的组合来实现。在上述实施方式中,多个步骤或方法可以用存储在存储器中且由合适的指令执行系统执行的软件或固件来实现。例如,如果用硬件来实现,和在另一实施方式中一样,可用本领域公知的下列技术中的任一项或他们的组合来实现:具有用于对数据信号实现逻辑功能的逻辑门电路的离散逻辑电路,具有合适的组合逻辑门电路的专用集成电路,可编程门阵列(PGA),现场可编程门阵列(FPGA)等。

本技术领域的普通技术人员可以理解实现上述实施例方法携带的全部或部分步骤是可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,该程序在执行时,包括方法实施例的步骤之一或其组合。

此外,在本发明各个实施例中的各功能单元可以集成在一个处理模块中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。所述集成的模块如果以软件功能模块的形式实现并作为独立的产品销售或使用时,也可以存储在一个计算机可读取存储介质中。

上述提到的存储介质可以是只读存储器,磁盘或光盘等。尽管上面已经示出和描述了本发明的实施例,可以理解的是,上述实施例是示例性的,不能理解为对本发明的限制,本领域的普通技术人员在本发明的范围内可以对上述实施例进行变化、修改、替换和变型。

12页详细技术资料下载
上一篇:一种医用注射器针头装配设备
下一篇:一种代码覆盖率的统计方法及装置

网友询问留言

已有0条留言

还没有人留言评论。精彩留言会获得点赞!

精彩留言,会给你点赞!