CN110928771A - 一种定时自动化批量测试Rest接口的方法及*** - Google Patents

一种定时自动化批量测试Rest接口的方法及*** Download PDF

Info

Publication number
CN110928771A
CN110928771A CN201911044207.8A CN201911044207A CN110928771A CN 110928771 A CN110928771 A CN 110928771A CN 201911044207 A CN201911044207 A CN 201911044207A CN 110928771 A CN110928771 A CN 110928771A
Authority
CN
China
Prior art keywords
test
login
web application
configuring
application program
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
CN201911044207.8A
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.)
Suzhou Wave Intelligent Technology Co Ltd
Original Assignee
Suzhou Wave Intelligent 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 Suzhou Wave Intelligent Technology Co Ltd filed Critical Suzhou Wave Intelligent Technology Co Ltd
Priority to CN201911044207.8A priority Critical patent/CN110928771A/zh
Publication of CN110928771A publication Critical patent/CN110928771A/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
    • 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/3692Test management for test results analysis

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

本发明提供一种定时自动化批量测试Rest接口的方法及***,方法包括如下步骤:S1.在测试机部署测试脚本;S2.配置测试脚本通过WEB应用程序的登录组件登录,对WEB应用程序的登录组件的Rest接口进行测试,并获取登录后SessionID和token;S3.配置测试脚本根据登录WEB应用程序获取登录后SessionID和token,对Web应用程序基础组件的Rest接口进行测试;S4.配置测试脚本对WEB应用程序的各业务组件的Rest接口进行并发测试;S5.配置测试脚本判断WEB应用程序的各组件的Rest接口是否完成;若否,则返回步骤S2;若是,则配置测试脚本对测试数据进行删除,并生成测试报告。

Description

一种定时自动化批量测试Rest接口的方法及***
技术领域
本发明属于服务器软件测试技术领域,具体涉及一种定时自动化批量测试Rest接口的方法及***。
背景技术
Rest(Representational State Transfer)表述性状态转移,一种软件架构风格。
在对B/S架构的WEB应用程序进行Rest API接口测试时,我们需要输入Rest接口的URL以及参数和需要的HTTP方法和HTTP header内容,发送后等待返回的内容,对内容进行验证,是否符合要求。HTTP Header中一般需要包含Cookie和token,Cookie中保存着本次会话的SessionID,服务器根据SessionID来标识本次会话。而token主要用于客户端访问时的服务端验证。进行Rest接口测试时,我们必须在header中添加SessionID和token的值,这样才能通过服务端校验,服务端才能根据Rest请求的URL和参数返回预期的结果。而SessionID和token的值是需要登录操作后服务端返回的。当进行批量接口测试时,每次都需要手动添加SessionID和token的值。而业务接口测试时,依赖某些资源,需要提前构造好这些数据。各业务模块依次执行,需要耗费大量的时间,造成效率低下。如果想重新测试Rest接口,需要先将上次执行产生的残余数据清除,才能进行下一次的测试。
此为现有技术的不足,因此,针对现有技术中的上述缺陷,提供一种定时自动化批量测试Rest接口的方法及***,是非常有必要的。
发明内容
针对现有技术的上述Rest接口批量测试需手动进行,耗费大量时间,效率低下的缺陷,本发明提供一种定时自动化批量测试Rest接口的方法及***,以解决上述技术问题。
第一方面,本发明提供一种定时自动化批量测试Rest接口的方法,包括如下步骤:
S1.在测试机部署测试脚本;
S2.配置测试脚本通过WEB应用程序的登录组件登录,对WEB应用程序的登录组件的Rest接口进行测试,并获取登录后SessionID和token;
S3.配置测试脚本根据登录WEB应用程序获取的登录后SessionID和token,对Web应用程序基础组件的Rest接口进行测试;
S4.配置测试脚本对WEB应用程序的各业务组件的Rest接口进行并发测试;
S5.配置测试脚本判断WEB应用程序的各组件的Rest接口是否完成;
若否,则返回步骤S2;
若是,则配置测试脚本对测试数据进行删除,并生成测试报告。
进一步地,步骤S5之后包括如下步骤:
S6.配置测试脚本定时执行,每达到一次定时时间,返回步骤S2。定时自动化测试WEB应用程序的Rest接口,节省人工发现问题的时间和成本,能够及时发现问题。
进一步地,步骤S2具体步骤如下:
S21.配置测试脚本通过HTTP的GET命令访问WEB服务器的根目录,并根据返回的响应报文Set-Cookie的值截取登录前SessionID,再用登录前SessionID标识本次会话;
S22.配置测试脚本通过HTTP的POST命令将登录前SessionID放在header中,并将当前用户名密码作为POST请求的参数一同放在请求报文中,再通过WEB应用程序登录组件的Rest接口请求登录WEB服务器;
S23.配置测试脚本接收WEB服务器返回的对当前用户名密码加密后的token及登录后SessionID。测试脚本通过HTTP的GET、POST命令对WEB应用程序登录组件的Rest接口进行测试。
进一步地,步骤S3具体步骤如下:
S31.配置测试脚本根据登录WEB应用程序获取的登录后SessionID和token,并通过Web应用程序基础组件的Rest接口获取、添加以及删除数据;
S32.配置测试脚本通过Web应用程序基础组件的Rest接口创建登录后用户以及生成各业务组件的依赖数据。测试脚本对WEB应用程序的基础组件的Rest接口单独进行测试。
进一步地,步骤S31中,通过HTTP的GET命令获取数据,通过HTTP的POST命令添加数据,通过HTTP的PUT命令修改数据。测试脚本通过HTTP的各种命令对基础组件的Rest接口进行测试。
进一步地,步骤S4具体步骤如下:
S41.配置测试脚本获取通过Web应用程序基础组件的Rest接口创建的登录后用户,并设置每个用户通过Web应用程序登录组件登录,并获取每个用户的登录后SessionID和token;
S42.配置测试脚本根据登录每个用户登录WEB应用程序获取的登录后SessionID和token,并行采用HTTP的GET、POST、PUT以及DELETE命令测试各业务组件的Rest接口,对各业务测试组件的数据进行增删改查;
S43.配置测试脚本通过各业务组件的Rest接口接收WEB服务器返回的错误消息。测试脚本通过不同的Session,以及基础组件创建的不同用户进行登录,来达到多线程批量操作而不会相互影响,对WEB应用程序的各个业务组件的Rest接口进行同时并发测试。
进一步地,步骤S5具体步骤如下:
S51.配置测试脚本判断WEB应用程序的各组件的Rest接口是否完成;
S52.若否,则返回步骤S2;
若是,则配置测试脚本通过HTTP的DELETE命令对Web应用程序基础组件的Rest接口生成的数据进行删除操作,并验证数据是否删除成功;
S53.配置测试脚本汇总WEB服务器返回的错误消息,并生成当前时间戳命名的测试报告文件。测试脚本删除产生的基础数据,以便于测试脚本的定时执行。
第二方面,本发明提供一种定时自动化批量测试Rest接口的***,包括
测试脚本部署模块,用于在测试机部署测试脚本;
登录组件的Rest接口测试模块,用于配置测试脚本通过WEB应用程序的登录组件登录,对WEB应用程序的登录组件的Rest接口进行测试,并获取登录后SessionID和token;
基础组件的Rest接口测试模块,用于配置测试脚本根据登录WEB应用程序获取登录后SessionID和token,对Web应用程序基础组件的Rest接口进行测试;
各业务组件的Rest接口测试模块,用于配置测试脚本对WEB应用程序的各业务组件的Rest接口进行并发测试;
测试完成判断模块,用于配置测试脚本判断WEB应用程序的各组件的Rest接口是否完成;
定时模块,用于配置测试脚本定时执行,每达到一次定时时间,执行测试。
进一步地,登录组件的Rest接口测试模块包括:
会话ID获取单元,用于配置测试脚本通过HTTP的GET命令访问WEB服务器的根目录,并根据返回的响应报文Set-Cookie的值截取登录前SessionID,再用登录前SessionID标识本次会话;
登录请求单元,用于配置测试脚本通过HTTP的POST命令将登录前SessionID放在header中,并将当前用户名密码作为POST请求的参数一同放在请求报文中,再通过WEB应用程序登录组件的Rest接口请求登录WEB服务器;
令牌接收单元,用于配置测试脚本接收WEB服务器返回的对当前用户名密码加密后的token及登录后SessionID。测试脚本通过HTTP的GET、POST命令对WEB应用程序登录组件的Rest接口进行测试。
进一步地,基础组件的Rest接口测试模块包括
获取、添加及删除数据单元,用于配置测试脚本根据登录WEB应用程序获取的登录后SessionID和token,并通过Web应用程序基础组件的Rest接口获取、添加以及删除数据;
用户及数据创建单元,用于配置测试脚本通过Web应用程序基础组件的Rest接口创建多个用户以及生成各业务组件的依赖数据。测试脚本对WEB应用程序的基础组件的Rest接口单独进行测试。
进一步地,各业务组件的Rest接口测试模块包括:
用户、SessionID及token获取单元,用于配置测试脚本获取通过Web应用程序基础组件的Rest接口创建的多个用户,并设置每个用户通过Web应用程序登录组件登录,并获取每个用户的登录后SessionID和token;
业务组件Rest接口数据测试单元,用于配置测试脚本根据登录每个用户登录WEB应用程序获取的登录后SessionID和token,并行采用HTTP的GET、POST、PUT以及DELETE命令测试各业务组件的Rest接口,对各业务测试组件的数据进行增删改查;
错误消息接收单元,用于配置测试脚本通过各业务组件的Rest接口接收WEB服务器返回的错误消息;
测试完成判断模块包括:
测试完成判断单元,用于配置测试脚本判断WEB应用程序的各组件的Rest接口是否完成;
数据删除单元,用于配置测试脚本当各组件的Rest接口测试完时,通过HTTP的DELETE命令对Web应用程序基础组件的Rest接口生成的数据进行删除操作,并验证数据是否删除成功;
错误消息汇总单元,用于配置测试脚本汇总WEB服务器返回的错误消息,并生成当前时间戳命名的测试报告文件。测试脚本通过不同的Session,以及基础组件创建的不同用户进行登录,来达到多线程批量操作而不会相互影响,对WEB应用程序的各个业务组件的Rest接口进行同时并发测试;测试脚本删除产生的基础数据,以便于测试脚本的定时执行。
本发明的有益效果在于,
本发明提供的一种定时自动化批量测试Rest接口的方法及***,对WEB应用程序的基础组件进行单独测试,同时对WEB应用程序的多个独立的业务组件的Rest接口进行并非测试,提高了效率;脚本中产生的数据在测试结束前进行了清除,易于后期定时执行测试脚本,及时发现问题,通过测试脚本自动化测试WEB应用程序的Rest接口,节省人工发现问题的时间和成本,能够及时发现问题。
此外,本发明设计原理可靠,结构简单,具有非常广泛的应用前景。
由此可见,本发明与现有技术相比,具有突出的实质性特点和显著的进步,其实施的有益效果也是显而易见的。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,对于本领域普通技术人员而言,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明的方法流程示意图一;
图2是本发明的方法流程示意图二;
图3为本发明的***示意图;
图中,1-测试脚本部署模块;2-登录组件的Rest接口测试模块;2.1-会话ID获取单元;2.2-登录请求单元;2.3-令牌接收单元;3-基础组件的Rest接口测试模块;3.1-获取、添加及删除数据单元;3.2-用户及数据创建单元;4-各业务组件的Rest接口测试模块;4.1-用户、SessionID及token获取单元;4.2-业务组件Rest接口数据测试单元;4.3-错误消息接收单元;5-测试完成判断模块;5.1-测试完成判断单元;5.2-数据删除单元;5.3-错误消息汇总单元;6-定时模块。
具体实施方式
为了使本技术领域的人员更好地理解本发明中的技术方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本发明保护的范围。
实施例1:
如图1所示,本发明提供一种定时自动化批量测试Rest接口的方法,包括如下步骤:
S1.在测试机部署测试脚本;
S2.配置测试脚本通过WEB应用程序的登录组件登录,对WEB应用程序的登录组件的Rest接口进行测试,并获取登录后SessionID和token;
S3.配置测试脚本根据登录WEB应用程序获取的登录后SessionID和token,对Web应用程序基础组件的Rest接口进行测试;
S4.配置测试脚本对WEB应用程序的各业务组件的Rest接口进行并发测试;
S5.配置测试脚本判断WEB应用程序的各组件的Rest接口是否完成;
若否,则返回步骤S2;
若是,则配置测试脚本对测试数据进行删除,并生成测试报告;
S6.配置测试脚本定时执行,每达到一次定时时间,返回步骤S2。本发明的测试脚本首先对WEB应用程序的登录组件的Rest接口进行测试,然后对WEB应用程序的基础组件的Rest接口进行单独测试,在对独立的各业务组件进行批量测试,同时,设置测试脚本定时执行。
实施例2:
如图2所示,本发明提供一种定时自动化批量测试Rest接口的方法,包括如下步骤:
S1.在测试机部署测试脚本;
S2.配置测试脚本通过WEB应用程序的登录组件登录,对WEB应用程序的登录组件的Rest接口进行测试,并获取登录后SessionID和token;具体步骤如下:
S21.配置测试脚本通过HTTP的GET命令访问WEB服务器的根目录,并根据返回的响应报文Set-Cookie的值截取登录前SessionID,再用登录前SessionID标识本次会话;
S22.配置测试脚本通过HTTP的POST命令将登录前SessionID放在header中,并将当前用户名密码作为POST请求的参数一同放在请求报文中,再通过WEB应用程序登录组件的Rest接口请求登录WEB服务器;
S23.配置测试脚本接收WEB服务器返回的对当前用户名密码加密后的token及登录后SessionID;
S3.配置测试脚本根据登录WEB应用程序获取的登录后SessionID和token,对Web应用程序基础组件的Rest接口进行测试;具体步骤如下:
S31.配置测试脚本根据登录WEB应用程序获取的登录后SessionID和token,并通过Web应用程序基础组件的Rest接口获取、添加以及删除数据;通过HTTP的GET命令获取数据,通过HTTP的POST命令添加数据,通过HTTP的PUT命令修改数据;
S32.配置测试脚本通过Web应用程序基础组件的Rest接口创建多个用户以及生成各业务组件的依赖数据;
S4.配置测试脚本对WEB应用程序的各业务组件的Rest接口进行并发测试;具体步骤如下:
S41.配置测试脚本获取通过Web应用程序基础组件的Rest接口创建的多个用户,并设置每个用户通过Web应用程序登录组件登录,并获取每个用户的登录后SessionID和token;
S42.配置测试脚本根据登录每个用户登录WEB应用程序获取的登录后SessionID和token,并行采用HTTP的GET、POST、PUT以及DELETE命令测试各业务组件的Rest接口,对各业务测试组件的数据进行增删改查;
S43.配置测试脚本通过各业务组件的Rest接口接收WEB服务器返回的错误消息;
S5.配置测试脚本判断WEB应用程序的各组件的Rest接口是否完成;具体步骤如下:
S51.配置测试脚本判断WEB应用程序的各组件的Rest接口是否完成;
S52.若否,则返回步骤S2;
若是,则配置测试脚本通过HTTP的DELETE命令对Web应用程序基础组件的Rest接口生成的数据进行删除操作,并验证数据是否删除成功;
S53.配置测试脚本汇总WEB服务器返回的错误消息,并生成当前时间戳命名的测试报告文件;
S6.配置测试脚本定时执行,每达到一次定时时间,返回步骤S2。测试脚本通过HTTP的GET、POST命令对WEB应用程序登录组件的Rest接口进行测试;测试脚本通过HTTP的各种命令对WEB应用程序的基础组件的Rest接口单独进行测试;测试脚本通过不同的Session,以及基础组件创建的不同用户进行登录,来达到多线程批量操作而不会相互影响,对WEB应用程序的各个业务组件的Rest接口进行同时并发测试;并且测试脚本删除产生的基础数据,以便于测试脚本的定时执行,从而提高测试效率,及时发现WEB应用程序Rest接口的问题。
实施例3:
如图3所示,本发明提供一种定时自动化批量测试Rest接口的***,包括测试脚本部署模块1,用于在测试机部署测试脚本;
登录组件的Rest接口测试模块2,用于配置测试脚本通过WEB应用程序的登录组件登录,对WEB应用程序的登录组件的Rest接口进行测试,并获取登录后SessionID和token;登录组件的Rest接口测试模块2包括:
会话ID获取单元2.1,用于配置测试脚本通过HTTP的GET命令访问WEB服务器的根目录,并根据返回的响应报文Set-Cookie的值截取登录前SessionID,再用登录前SessionID标识本次会话;
登录请求单元2.2,用于配置测试脚本通过HTTP的POST命令将登录前SessionID放在header中,并将当前用户名密码作为POST请求的参数一同放在请求报文中,再通过WEB应用程序登录组件的Rest接口请求登录WEB服务器;
令牌接收单元2.3,用于配置测试脚本接收WEB服务器返回的对当前用户名密码加密后的token及登录后SessionID;
基础组件的Rest接口测试模块3,用于配置测试脚本根据登录WEB应用程序获取的登录后SessionID和token,对Web应用程序基础组件的Rest接口进行测试;基础组件的Rest接口测试模块3包括
获取、添加及删除数据单元3.1,用于配置测试脚本根据登录WEB应用程序获取的登录后SessionID和token,并通过Web应用程序基础组件的Rest接口获取、添加以及删除数据;
用户及数据创建单元3.2,用于配置测试脚本通过Web应用程序基础组件的Rest接口创建多个用户以及生成各业务组件的依赖数据;
各业务组件的Rest接口测试模块4,用于配置测试脚本对WEB应用程序的各业务组件的Rest接口进行并发测试;各业务组件的Rest接口测试模块4包括:
用户、SessionID及token获取单元4.1,用于配置测试脚本获取通过Web应用程序基础组件的Rest接口创建的多个用户,并设置每个用户通过Web应用程序登录组件登录,并获取每个用户的登录后SessionID和token;
业务组件Rest接口数据测试单元4.2,用于配置测试脚本根据登录每个用户登录WEB应用程序获取的登录后SessionID和token,并行采用HTTP的GET、POST、PUT以及DELETE命令测试各业务组件的Rest接口,对各业务测试组件的数据进行增删改查;
错误消息接收单元4.3,用于配置测试脚本通过各业务组件的Rest接口接收WEB服务器返回的错误消息;
测试完成判断模块5,用于配置测试脚本判断WEB应用程序的各组件的Rest接口是否完成;测试完成判断模块5包括:
测试完成判断单元5.1,用于配置测试脚本判断WEB应用程序的各组件的Rest接口是否完成;
数据删除单元5.2,用于配置测试脚本当各组件的Rest接口测试完时,通过HTTP的DELETE命令对Web应用程序基础组件的Rest接口生成的数据进行删除操作,并验证数据是否删除成功;
错误消息汇总单元5.3,用于配置测试脚本汇总WEB服务器返回的错误消息,并生成当前时间戳命名的测试报告文件;
定时模块6,用于配置测试脚本定时执行,每达到一次定时时间,执行测试。
本发明首先对WEB应用程序的登录组件的Rest接口进行测试,发送Rest请求,获取token的值及登录后SessionID;然后对WEB应用程序的基础组件的Rest接口进行单独测试,然后对独立的各业务组件进行批量测试。在测试脚本中使用HTTP的GET、POST、PUT、DELETE命令请求业务测试模块的URL,请求报文中包含Header里的登录后SessionID、token、参数。然后对WEB服务器返回的HTTP响应报文进行解析分析。对各业务测试组件进行测试时,重新调用登录组件,使用不同的Session和WEB应用程序基础组件创建的用户进行登录,来达到多线程批量操作而不会相互影响。等到WEB应用程序所有组件测试完成后,删除生成的基础数据,生成测试报告。由于在测试过程中产生的数据和配置没有残余,所以可以定时执行该测试脚本,达到验证Rest接口的目的,及时验证Rest接口修改后是否有新问题。
尽管通过参考附图并结合优选实施例的方式对本发明进行了详细描述,但本发明并不限于此。在不脱离本发明的精神和实质的前提下,本领域普通技术人员可以对本发明的实施例进行各种等效的修改或替换,而这些修改或替换都应在本发明的涵盖范围内/任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以所述权利要求的保护范围为准。

Claims (10)

1.一种定时自动化批量测试Rest接口的方法,其特征在于,包括如下步骤:
S1.在测试机部署测试脚本;
S2.配置测试脚本通过WEB应用程序的登录组件登录,对WEB应用程序的登录组件的Rest接口进行测试,并获取登录后SessionID和token;
S3.配置测试脚本根据登录WEB应用程序获取的登录后SessionID和token,对Web应用程序基础组件的Rest接口进行测试;
S4.配置测试脚本对WEB应用程序的各业务组件的Rest接口进行并发测试;
S5.配置测试脚本判断WEB应用程序的各组件的Rest接口是否完成;
若否,则返回步骤S2;
若是,则配置测试脚本对测试数据进行删除,并生成测试报告。
2.如权利要求1所述的定时自动化批量测试Rest接口的方法,其特征在于,
步骤S5之后包括如下步骤:
S6.配置测试脚本定时执行,每达到一次定时时间,返回步骤S2。
3.如权利要求1所述的定时自动化批量测试Rest接口的方法,其特征在于,步骤S2具体步骤如下:
S21.配置测试脚本通过HTTP的GET命令访问WEB服务器的根目录,并根据返回的响应报文Set-Cookie的值截取登录前SessionID,再用登录前SessionID标识本次会话;
S22.配置测试脚本通过HTTP的POST命令将登录前SessionID放在header中,并将当前用户名密码作为POST请求的参数一同放在请求报文中,再通过WEB应用程序登录组件的Rest接口请求登录WEB服务器;
S23.配置测试脚本接收WEB服务器返回的对当前用户名密码加密后的token及登录后SessionID。
4.如权利要求1所述的定时自动化批量测试Rest接口的方法,其特征在于,步骤S3具体步骤如下:
S31.配置测试脚本根据登录WEB应用程序获取的登录后SessionID和token,并通过Web应用程序基础组件的Rest接口获取、添加以及删除数据;
S32.配置测试脚本通过Web应用程序基础组件的Rest接口创建多个用户以及生成各业务组件的依赖数据。
5.如权利要求4所述的定时自动化批量测试Rest接口的方法,其特征在于,步骤S4具体步骤如下:
S41.配置测试脚本获取通过Web应用程序基础组件的Rest接口创建的多个用户,并设置每个用户通过Web应用程序登录组件登录,并获取每个用户的登录后SessionID和token;
S42.配置测试脚本根据登录每个用户登录WEB应用程序获取的登录后SessionID和token,并行采用HTTP的GET、POST、PUT以及DELETE命令测试各业务组件的Rest接口,对各业务测试组件的数据进行增删改查;
S43.配置测试脚本通过各业务组件的Rest接口接收WEB服务器返回的错误消息。
6.如权利要求5所述的定时自动化批量测试Rest接口的方法,其特征在于,步骤S5具体步骤如下:
S51.配置测试脚本判断WEB应用程序的各组件的Rest接口是否完成;
S52.若否,则返回步骤S2;
若是,则配置测试脚本通过HTTP的DELETE命令对Web应用程序基础组件的Rest接口生成的数据进行删除操作,并验证数据是否删除成功;
S53.配置测试脚本汇总WEB服务器返回的错误消息,并生成当前时间戳命名的测试报告文件。
7.一种定时自动化批量测试Rest接口的***,其特征在于,包括
测试脚本部署模块(1),用于在测试机部署测试脚本;
登录组件的Rest接口测试模块(2),用于配置测试脚本通过WEB应用程序的登录组件登录,对WEB应用程序的登录组件的Rest接口进行测试,并获取登录后SessionID和token;
基础组件的Rest接口测试模块(3),用于配置测试脚本根据登录WEB应用程序获取的登录后SessionID和token,对Web应用程序基础组件的Rest接口进行测试;
各业务组件的Rest接口测试模块(4),用于配置测试脚本对WEB应用程序的各业务组件的Rest接口进行并发测试;
测试完成判断模块(5),用于配置测试脚本判断WEB应用程序的各组件的Rest接口是否完成;
定时模块(6),用于配置测试脚本定时执行,每达到一次定时时间,执行测试。
8.如权利要求7所述的定时自动化批量测试Rest接口的***,其特征在于,登录组件的Rest接口测试模块(2)包括:
会话ID获取单元(2.1),用于配置测试脚本通过HTTP的GET命令访问WEB服务器的根目录,并根据返回的响应报文Set-Cookie的值截取登录前SessionID,再用登录前SessionID标识本次会话;
登录请求单元(2.2),用于配置测试脚本通过HTTP的POST命令将登录前SessionID放在header中,并将当前用户名密码作为POST请求的参数一同放在请求报文中,再通过WEB应用程序登录组件的Rest接口请求登录WEB服务器;
令牌接收单元(2.3),用于配置测试脚本接收WEB服务器返回的对当前用户名密码加密后的token及登录后SessionID。
9.如权利要求7所述的定时自动化批量测试Rest接口的***,其特征在于,基础组件的Rest接口测试模块(3)包括
获取、添加及删除数据单元(3.1),用于配置测试脚本根据登录WEB应用程序获取的登录后SessionID和token,并通过Web应用程序基础组件的Rest接口获取、添加以及删除数据;
用户及数据创建单元(3.2),用于配置测试脚本通过Web应用程序基础组件的Rest接口创建多个用户以及生成各业务组件的依赖数据。
10.如权利要求7所述的定时自动化批量测试Rest接口的***,其特征在于,各业务组件的Rest接口测试模块(4)包括:
用户、SessionID及token获取单元(4.1),用于配置测试脚本获取通过Web应用程序基础组件的Rest接口创建的多个用户,并设置每个用户通过Web应用程序登录组件登录,并获取每个用户的登录后SessionID和token;
业务组件Rest接口数据测试单元(4.2),用于配置测试脚本根据登录每个用户登录WEB应用程序获取的登录后SessionID和token,并行采用HTTP的GET、POST、PUT以及DELETE命令测试各业务组件的Rest接口,对各业务测试组件的数据进行增删改查;
错误消息接收单元(4.3),用于配置测试脚本通过各业务组件的Rest接口接收WEB服务器返回的错误消息;
测试完成判断模块(5)包括:
测试完成判断单元(5.1),用于配置测试脚本判断WEB应用程序的各组件的Rest接口是否完成;
数据删除单元(5.2),用于配置测试脚本当各组件的Rest接口测试完时,通过HTTP的DELETE命令对Web应用程序基础组件的Rest接口生成的数据进行删除操作,并验证数据是否删除成功;
错误消息汇总单元(5.3),用于配置测试脚本汇总WEB服务器返回的错误消息,并生成当前时间戳命名的测试报告文件。
CN201911044207.8A 2019-10-30 2019-10-30 一种定时自动化批量测试Rest接口的方法及*** Pending CN110928771A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201911044207.8A CN110928771A (zh) 2019-10-30 2019-10-30 一种定时自动化批量测试Rest接口的方法及***

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201911044207.8A CN110928771A (zh) 2019-10-30 2019-10-30 一种定时自动化批量测试Rest接口的方法及***

Publications (1)

Publication Number Publication Date
CN110928771A true CN110928771A (zh) 2020-03-27

Family

ID=69849864

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201911044207.8A Pending CN110928771A (zh) 2019-10-30 2019-10-30 一种定时自动化批量测试Rest接口的方法及***

Country Status (1)

Country Link
CN (1) CN110928771A (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112860640A (zh) * 2021-01-25 2021-05-28 上海微亿智造科技有限公司 批量上传文件自动化方法和***
CN113051157A (zh) * 2021-03-17 2021-06-29 武汉联影医疗科技有限公司 接口测试方法、装置、计算机设备和存储介质
CN113704080A (zh) * 2020-05-22 2021-11-26 北京沃东天骏信息技术有限公司 一种自动化测试方法和装置

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103473148A (zh) * 2012-06-08 2013-12-25 中兴通讯股份有限公司 一种恢复测试环境方法及装置
US20150378881A1 (en) * 2014-06-30 2015-12-31 Bank Of America Corporation Platform-independent selenium to application lifecycle management ("alm") server connectivity
CN106095677A (zh) * 2016-06-08 2016-11-09 上海爱数信息技术股份有限公司 基于Robot Framework实现的RESTful Webservice接口自动化测试方法
CN107179986A (zh) * 2016-03-10 2017-09-19 阿里巴巴集团控股有限公司 业务***的压力测试方法和装置
CN107562623A (zh) * 2017-08-29 2018-01-09 郑州云海信息技术有限公司 一种rest api自动化测试方法及***
CN107678961A (zh) * 2017-09-26 2018-02-09 郑州云海信息技术有限公司 一种接口测试方法及装置
CN108829594A (zh) * 2018-06-07 2018-11-16 郑州云海信息技术有限公司 一种Linux下自动化测试BMC web资产信息功能的方法及***
CN109344077A (zh) * 2018-10-24 2019-02-15 郑州云海信息技术有限公司 RestAPI特性测试方法、装置、设备及存储介质

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103473148A (zh) * 2012-06-08 2013-12-25 中兴通讯股份有限公司 一种恢复测试环境方法及装置
US20150378881A1 (en) * 2014-06-30 2015-12-31 Bank Of America Corporation Platform-independent selenium to application lifecycle management ("alm") server connectivity
CN107179986A (zh) * 2016-03-10 2017-09-19 阿里巴巴集团控股有限公司 业务***的压力测试方法和装置
CN106095677A (zh) * 2016-06-08 2016-11-09 上海爱数信息技术股份有限公司 基于Robot Framework实现的RESTful Webservice接口自动化测试方法
CN107562623A (zh) * 2017-08-29 2018-01-09 郑州云海信息技术有限公司 一种rest api自动化测试方法及***
CN107678961A (zh) * 2017-09-26 2018-02-09 郑州云海信息技术有限公司 一种接口测试方法及装置
CN108829594A (zh) * 2018-06-07 2018-11-16 郑州云海信息技术有限公司 一种Linux下自动化测试BMC web资产信息功能的方法及***
CN109344077A (zh) * 2018-10-24 2019-02-15 郑州云海信息技术有限公司 RestAPI特性测试方法、装置、设备及存储介质

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113704080A (zh) * 2020-05-22 2021-11-26 北京沃东天骏信息技术有限公司 一种自动化测试方法和装置
CN112860640A (zh) * 2021-01-25 2021-05-28 上海微亿智造科技有限公司 批量上传文件自动化方法和***
CN113051157A (zh) * 2021-03-17 2021-06-29 武汉联影医疗科技有限公司 接口测试方法、装置、计算机设备和存储介质
CN113051157B (zh) * 2021-03-17 2023-02-28 武汉联影医疗科技有限公司 接口测试方法、装置、计算机设备和存储介质

Similar Documents

Publication Publication Date Title
CN108650149B (zh) 服务器的测试方法、装置、设备及计算机可读存储介质
CN110442524B (zh) 一种针对带有认证授权的web服务接口测试方法和装置
Cinque et al. Microservices monitoring with event logs and black box execution tracing
CN110928771A (zh) 一种定时自动化批量测试Rest接口的方法及***
CN105099811B (zh) 一种接口测试方法和装置
US6446120B1 (en) Configurable stresser for a web server
CN105872019B (zh) 一种Web端登录Docker容器的方法和装置
US8006294B2 (en) System and method for single sign-on
CN110908909B (zh) 自动化测试方法、装置、存储介质及设备
US8291068B2 (en) Automatic protocol detection
CN108563571A (zh) 软件接口测试方法及***、计算机可读存储介质、终端
CN110119350B (zh) 软件开发工具包测试方法、装置和设备及计算机存储介质
CN108632213A (zh) 设备信息处理方法及装置
WO2016110080A1 (zh) 一种故障定位的方法和相应装置
Casola et al. A methodology for automated penetration testing of cloud applications
CN106656927A (zh) 将Linux账号加入AD域的方法及装置
CN110134612A (zh) Ui测试数据生成方法、装置、设备及可读存储介质
CN109428893A (zh) 一种身份认证方法、装置及***
CN103646081B (zh) 一种在网页中进行登录的方法和装置
CN115150377A (zh) 一种模拟接口调用及处理方法和装置
CN105117340A (zh) 用于iOS浏览器应用质量评估的URL检测方法和装置
CN112966262B (zh) 一种操作日志的生成方法、装置、电子设备及存储介质
CN103259785B (zh) 虚拟令牌的认证方法及***
CN109388420A (zh) 应用升级测试方法、装置、计算机设备及存储介质
CN108683651A (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
RJ01 Rejection of invention patent application after publication

Application publication date: 20200327