CN108427639A - 自动化测试方法、应用服务器及计算机可读存储介质 - Google Patents

自动化测试方法、应用服务器及计算机可读存储介质 Download PDF

Info

Publication number
CN108427639A
CN108427639A CN201810067253.9A CN201810067253A CN108427639A CN 108427639 A CN108427639 A CN 108427639A CN 201810067253 A CN201810067253 A CN 201810067253A CN 108427639 A CN108427639 A CN 108427639A
Authority
CN
China
Prior art keywords
webpage
data
test
application program
rear end
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.)
Granted
Application number
CN201810067253.9A
Other languages
English (en)
Other versions
CN108427639B (zh
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.)
OneConnect Smart Technology Co Ltd
Original Assignee
OneConnect Smart 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 OneConnect Smart Technology Co Ltd filed Critical OneConnect Smart Technology Co Ltd
Priority to CN201810067253.9A priority Critical patent/CN108427639B/zh
Publication of CN108427639A publication Critical patent/CN108427639A/zh
Application granted granted Critical
Publication of CN108427639B publication Critical patent/CN108427639B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

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/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/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/3696Methods or tools to render software testable

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

本发明公开了一种自动化测试方法,该方法包括:配置摸爬应用程序;当网页前端发生改变而发出测试网页请求,且所述应用服务器在接受到该测试网页请求时,模拟前端向后端发送的http请求;根据所述http请求,通过所述摸爬应用程序抓取网页前端的数据;根据所述数据生成性能测试脚本;将所述数据及所述性能测试脚本发送至后端;及在后端执行所述性能测试脚本,以在后端完成回归测试。本发明还提供一种应用服务器及计算机可读存储介质。本发明提供的自动化测试方法、应用服务器及计算机可读存储介质能够避免现有技术中致当网页有一些细微的改动,都要在前端针对每一个网页做大量的回归测试,耗费测试资源的缺陷,同时提高测试效率。

Description

自动化测试方法、应用服务器及计算机可读存储介质
技术领域
本发明涉及测试技术领域,尤其涉及一种自动化测试方法、应用服务器 及计算机可读存储介质。
背景技术
当前,在很多Web(网页)项目中未实现前后端分离,导致当网页有一 些细微的改动,都要在前端针对每一个网页做大量的回归测试,耗费测试资 源。
发明内容
有鉴于此,本发明提出一种自动化测试方法、应用服务器及计算机可读 存储介质,以解决如何避免致当网页有一些细微的改动,都要在前端针对每 一个网页做大量的回归测试,耗费测试资源的问题。
首先,为实现上述目的,本发明提出一种自动化测试方法,该方法包括 步骤:
配置摸爬应用程序;
当网页前端发生改变而发出测试网页请求,且所述应用服务器在接受到 该测试网页请求时,模拟前端向后端发送的http请求;
根据所述http请求,通过所述摸爬应用程序抓取网页前端的数据;
根据所述摸爬应用程序抓取到的网页前端的数据生成性能测试脚本;
将所述摸爬应用程序抓取到的网页前端的数据及所述性能测试脚本发送 至后端;及
在后端执行所述性能测试脚本,以在后端完成回归测试。
可选地,该方法的根据所述http请求,通过所述摸爬应用程序抓取网页 前端的数据的步骤之后,还包括如下步骤:
生成网页数据抓取日志;
根据所述网页数据抓取日志,判断抓取的网页前端的数据是否已经齐全;
若所述抓取的网页前端的数据没有齐全,则重新执行所述摸爬应用程序, 直到抓取齐全所述网页前端的数据。
可选地,所述根据所述数据生成性能测试脚本的步骤,具体包括如下步 骤:
根据所述网页数据抓取日志分析抓取到的网页前端数据的层级关系;
根据所述层级关系生成数据树状结构图,进而生成性能测试脚本。
可选地,所述将所述数据及所述性能测试脚本发送至后端的步骤,具体 包括如下步骤:
根据所述网页测试请求获取网页测试任务,将多个测试任务集成在一个 测试脚本;
将集成有多个测试任务的测试脚本文件及数据传送至后端。
可选地,当接收到测试网页请求时,模拟前端向后端发送http请求的步 骤中,当接收到测试网页请求时,通过HttpClient模拟前端向后端发送http请 求。
此外,为实现上述目的,本发明还提供一种应用服务器,包括存储器、 处理器,所述存储器上存储有可在所述处理器上运行的自动化测试系统,所 述自动化测试系统被所述处理器执行时实现如下步骤:
配置摸爬应用程序;
当网页前端发生改变而发出测试网页请求,且所述应用服务器在接受到 该测试网页请求时,模拟前端向后端发送的http请求;
根据所述http请求,通过所述摸爬应用程序抓取网页前端的数据;
根据所摸爬应用程序抓取到的网页前端的述数据生成性能测试脚本;
将所述摸爬应用程序抓取到的网页前端的数据及所述性能测试脚本发送 至后端;及
在后端执行所述性能测试脚本,以在后端完成回归测试。
可选地,该方法的根据所述http请求,通过所述摸爬应用程序抓取网页 前端的数据的步骤之后,还包括如下步骤:
生成网页数据抓取日志;
根据所述网页数据抓取日志,判断抓取的网页前端的数据是否已经齐全;
若所述抓取的网页前端的数据没有齐全,则重新执行所述摸爬应用程序, 直到抓取齐全所述网页前端的数据。
可选地,所述根据所述数据生成性能测试脚本的步骤,具体包括如下步 骤:
根据所述网页数据抓取日志分析抓取到的网页前端数据的层级关系;
根据所述层级关系生成数据树状结构图,进而生成性能测试脚本。
可选地,所述将所述数据及所述性能测试脚本发送至后端的步骤,具体 包括如下步骤:
根据所述网页测试请求获取网页测试任务,将多个测试任务集成在一个 测试脚本;
将集成有多个测试任务的测试脚本文件及数据传送至后端。
进一步地,为实现上述目的,本发明还提供一种计算机可读存储介质, 所述计算机可读存储介质存储有自动化测试系统,所述自动化测试系统可被 至少一个处理器执行,以使所述至少一个处理器执行如上述的自动化测试方 法的步骤。
相较于现有技术,本发明所提出的自动化测试方法、应用服务器及计算 机可读存储介质,首先,配置摸爬应用程序;然后,当接收到测试网页请求 时,模拟前端向后端发送http请求;进一步地,根据所述http请求,通过所 述摸爬应用程序抓取网页前端的数据;进而,根据所述数据生成性能测试脚 本;接着,将所述数据及所述性能测试脚本发送至后端;最后,在后端执行 所述性能测试脚本,以在后端完成回归测试。这样,避免现有技术中致当网 页有一些细微的改动,都要在前端针对每一个网页做大量的回归测试,耗费 测试资源的缺陷,同时提高测试效率。
附图说明
图1是本发明应用服务器一可选的硬件架构的示意图;
图2是本发明自动化测试系统第一实施例的程序模块示意图;
图3是本发明自动化测试系统第二实施例的程序模块示意图;
图4是本发明自动化测试方法第一实施例的流程示意图;
图5是本发明自动化测试方法第二实施例的流程示意图。
附图标记:
本发明目的的实现、功能特点及优点将结合实施例,参照附图做进一步 说明。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及 实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施 例仅用以解释本发明,并不用于限定本发明。基于本发明中的实施例,本领 域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都 属于本发明保护的范围。
需要说明的是,在本发明中涉及“第一”、“第二”等的描述仅用于描述目的, 而不能理解为指示或暗示其相对重要性或者隐含指明所指示的技术特征的数 量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括至少一个该 特征。另外,各个实施例之间的技术方案可以相互结合,但是必须是以本领 域普通技术人员能够实现为基础,当技术方案的结合出现相互矛盾或无法实 现时应当认为这种技术方案的结合不存在,也不在本发明要求的保护范围之 内。
参阅图1所示,是本发明应用服务器2一可选的硬件架构的示意图。
本实施例中,所述应用服务器2可包括,但不仅限于,可通过系统总线相 互通信连接存储器11、处理器12、网络接口13。需要指出的是,图1仅示出了 具有组件11-13的应用服务器2,但是应理解的是,并不要求实施所有示出的组 件,可以替代的实施更多或者更少的组件。
其中,所述应用服务器2可以是机架式服务器、刀片式服务器、塔式服务 器或机柜式服务器等计算设备,该应用服务器2可以是独立的服务器,也可以 是多个服务器所组成的服务器集群。
所述存储器11至少包括一种类型的可读存储介质,所述可读存储介质包 括闪存、硬盘、多媒体卡、卡型存储器(例如,SD或DX存储器等)、随机访 问存储器(RAM)、静态随机访问存储器(SRAM)、只读存储器(ROM)、电 可擦除可编程只读存储器(EEPROM)、可编程只读存储器(PROM)、磁性存 储器、磁盘、光盘等。在一些实施例中,所述存储器11可以是所述应用服务 器2的内部存储单元,例如该应用服务器2的硬盘或内存。在另一些实施例中, 所述存储器11也可以是所述应用服务器2的外部存储设备,例如该应用服务器 2上配备的插接式硬盘,智能存储卡(Smart Media Card,SMC),安全数字 (Secure Digital,SD)卡,闪存卡(Flash Card)等。当然,所述存储器11还可 以既包括所述应用服务器2的内部存储单元也包括其外部存储设备。本实施例 中,所述存储器11通常用于存储安装于所述应用服务器2的操作系统和各类应 用软件,例如自动化测试系统200的程序代码等。此外,所述存储器11还可以 用于暂时地存储已经输出或者将要输出的各类数据。
所述处理器12在一些实施例中可以是中央处理器(Central Processing Unit,CPU)、控制器、微控制器、微处理器、或其他数据处理芯片。该处理 器12通常用于控制所述应用服务器2的总体操作。本实施例中,所述处理器12 用于运行所述存储器11中存储的程序代码或者处理数据,例如运行所述的自 动化测试系统200等。
所述网络接口13可包括无线网络接口或有线网络接口,该网络接口13通 常用于在所述应用服务器2与其他电子设备之间建立通信连接。
至此,己经详细介绍了本发明相关设备的硬件结构和功能。下面,将基 于上述介绍提出本发明的各个实施例。
首先,本发明提出一种自动化测试系统200。
参阅图2所示,是本发明自动化测试系统200第一实施例的程序模块图。
本实施例中,所述自动化测试系统200包括一系列的存储于存储器11上的 计算机程序指令,当该计算机程序指令被处理器12执行时,可以实现本发明 各实施例的自动化测试操作。在一些实施例中,基于该计算机程序指令各部 分所实现的特定的操作,自动化测试系统200可以被划分为一个或多个模块。 例如,在图2中,所述自动化测试系统200可以被分割成配置模块201、发送模 块202、抓取模块203、生成模块204及执行模块205。其中:
所述配置模块201,用于配置摸爬应用程序。
具体地,所述应用服务器2通过所述配置模块201配置摸爬应用程序,并 配置所述摸爬应用程序的摸爬规则。其中,所述摸爬规则包括但不限于摸爬 的网页类别、内容,文件格式等。在本实施例中,所述摸爬程序可以从网页 的某一个菜单选项开始,逐一读取网页中所有菜单选项的内容。所述摸爬应 用程序还可以在一个菜单选项中找到在网页中的其它菜单选项的连接地址, 然后通过这些链接地址寻找下一个菜单选项,这样一直循环下去,直到把这 个网页所有的菜单选项都抓取完为止。
所述发送模块202,用于当网页前端发生改变而发出测试网页请求,且所 述应用服务器在接受到该测试网页请求时,模拟前端向后端发送的http请求。
通常地,网页项目中没有实现前段后端分离,在这种情况下,当网页前 端即使发生一些细微的改动,都需要在前端针对每一个网页做大量的回归测 试,耗费测试资源,增加测试员的工作量。
因此,在本实施例中,当网页前端发生改变而发出测试网页请求,并将 所述测试网页请求发送至应用服务器2且所述应用服务器2在接受到该测试网 页请求时,通过所述发送模块202模拟前端向后端发送http请求。在本实施例 中,所述应用服务器通过HttpClient模拟前端向后端发起Http请求。
在本发明一实施例中,可以使用以下代码实现通过HttpClient去模拟Http 请求,可以理解的是,以下代码仅是为了更好的解释本发明,并作为本发明 的限定,在其他的实施例中,可以根据具体的应用环境对代码进行调整:
1 CloseableHttpClient httpclient=HttpClients.createDefault();
2 HttpGet request=new HttpGet(url);
3 request.setHeader("User-Agent","Mozilla/5.0(Windows NT 6.1;WOW64)...");
4 CloseableHttpResponse response=httpclient.execute(request);
5
6//read response
所述抓取模块203,用于根据所述http请求,通过所述摸爬应用程序抓取 网页前端的数据。
具体地,所述应用服务器2利用网页摸爬程序根据预配置好的摸爬规则抓 取网页组件数据,所述网页组件数据包括每个菜单栏、输入框、页面等包含 的数据。
在本实施例中,所述抓取模块203通过所述摸爬程序在抓取数据的同时, 还生成网页抓取日志。所述应用服务器2根据所述网页数据抓取日志,判断 抓取的网页前端的数据是否已经齐全。若所述抓取的网页前端的数据没有齐 全,则重新执行所述摸爬应用程序,以重新抓取网页前端的数据,直到抓取 齐全所述网页前端的数据。
所述生成模块模块204,用于根据所述摸爬应用程序抓取的网页前端的数 据生成性能测试脚本。
具体地,所述应用服务器2根据所述网页数据抓取日志分析抓取到的网 页前端数据的层级关系,即根据网页抓取日志对抓取的数据及所述数据涉及 的数据判断出所述网页摸爬程序抓取的网页组件数据的层级关系,并生成相 应的树状结构图。进一步通过所述生成模块204根据所述层级关系生成数据 树状结构图,生成性能测试脚本。
在本实施例中,所述树状结构图为XML文件,XML文件包含有网页组 件数据之间的层级关系信息。进一步地,所述应用服务器按2照该树状结构 图的XML文件逻辑生成对应的组件展示页面的XML文件,此时的XML文 件包含有网页组件数据之间的层级关系信息及网页的附加参数信息。最后, 根据所述组件展示页面的XML文件及附加参数信息生成性能测试脚本。
所述发送模块202,还用于将所述摸爬应用程序抓取网页前端的数据及所 述性能测试脚本发送至后端。
具体地,为了避免在前端针对每一个网页进行回归测试,造成浪费测试 资源的缺陷,所述应用服务器2根据所述http请求,通过所述发生模块202 将所述网页摸爬程序抓取齐全的网页组件数据及所述性能测试脚本全部打包 发送至后端,以实现在后端进行测试。
所述执行模块205,用于在后端执行所述性能测试脚本,以在后端完成回 归测试。
具体地,在后端运行所述性能测试脚本,实现了在后端快速完成前端页 面的回归测试。快速的验证网页代码修改对于网页原始功能是否受到影响。
通过上述程序模块201-205,本发明所提出的自动化测试系统200,首先, 配置摸爬应用程序;然后,当接收到测试网页请求时,模拟前端向后端发送 http请求;进一步地,根据所述http请求,通过所述摸爬应用程序抓取网页前 端的数据;进而,根据所述数据生成性能测试脚本;接着,将所述数据及所 述性能测试脚本发送至后端;最后,在后端执行所述性能测试脚本,以在后 端完成回归测试。这样,避免现有技术中致当网页有一些细微的改动,都要 在前端针对每一个网页做大量的回归测试,耗费测试资源的缺陷,同时提高 测试效率。
参阅图3所示,是本发明自动化测试系统200第二实施例的程序模块图。 本实施例中,所述的自动化测试系统200除了包括第一实施例中的所述配置模 块201、发送模块202、抓取模块203、生成模块204及执行模块205之外,还包 括集成模块206。
所述及集成模块206,用于根据所述网页测试请求获取网页测试任务,将 多个测试任务集成在一个测试脚本。
通常地,在网页项目中若未单独开放出接口,大量并发的测试(如一个 系统的登录测试)在测试过程中一般会疏忽。
因此,在本实施例中,当所述应用服务器2接收到测试网页请求时,根据 接收到测试网页请求获取测试任务,并将多个测试任务集成在一个测试脚本。 其中,所述多个测试任务为多个用户的行为测试,所述用户的行为包括但不 限于网页登陆、发帖、下订单等等,从而了解多用户并发访问同一个网页、 模块、数据时是否产生隐藏的并发问题,如内存泄漏、线程锁、资源争用问 题、服务器崩溃等问题。
所述发送模块202,还用于将集成有多个测试任务的测试脚本文件及数据 传送至后端。
具体地,以网页的测试登陆为例说明,如果网页项目没有单独开放出测 试接口,网页每次只能测试一个用户的登陆,进而不能测试网页的响应性能。 假如说某网页的要求为每秒最大可以处理100个登陆请求,则通过集成有100 个测试任务(即100个登陆请求)的测试脚本文件测试并发用户来执行登陆操 作,然后观察系统在不同负载下的响应时间和每秒事务数。如果用户数在100 的时候,响应时间还在允许范围,表示并发测试通过。
在本实施例中,通过将多个测试任务的配置文件集成在一个测试脚本, 并在后端运行测试脚本,实现了网页的并发测试。
通过上述程序模块206,本发明所提出的基于自动化测试系统200可以根 据所述网页测试请求获取网页测试任务,将多个测试任务集成在一个测试脚 本,将集成有多个测试任务的测试脚本文件及数据传送至后端,实现了在后 端后端运行测试脚本,完成并发测试。
此外,本发明还提出一种自动化测试方法。
参阅图4所示,是本发明自动化测试方法第一实施例的流程示意图。在本 实施例中,根据不同的需求,图5所示的流程图中的步骤的执行顺序可以改变, 某些步骤可以省略。
步骤S401,配置摸爬应用程序。
具体地,所述应用服务器2配置摸爬应用程序,并配置所述摸爬应用程序 的摸爬规则。其中,所述摸爬规则包括但不限于摸爬的网页类别、内容,文 件格式等。在本实施例中,所述摸爬程序可以从网页的某一个菜单选项开始, 逐一读取网页中所有菜单选项的内容。所述摸爬应用程序还可以在一个菜单 选项中找到在网页中的其它菜单选项的连接地址,然后通过这些链接地址寻 找下一个菜单选项,这样一直循环下去,直到把这个网页所有的菜单选项都 抓取完为止。
步骤S402,当网页前端发生改变而发出测试网页请求,且所述应用服务 器在接受到该测试网页请求时,模拟前端向后端发送的http请求。
通常地,网页项目中没有实现前段后端分离,在这种情况下,当网页前 端即使发生一些细微的改动,都需要在前端针对每一个网页做大量的回归测 试,耗费测试资源,增加测试员的工作量。
因此,在本实施例中,当网页前端发生改变而发出测试网页请求,并将 所述测试网页请求发送至应用服务器2且所述应用服务器2在接受到该测试网 页请求时,模拟前端向后端发送http请求。在本实施例中,所述应用服务器通 过HttpClient模拟前端向后端发起Http请求。
在本发明一实施例中,可以使用以下代码实现通过HttpClient去模拟Http 请求,可以理解的是,以下代码仅是为了更好的解释本发明,并作为本发明 的限定,在其他的实施例中,可以根据具体的应用环境对代码进行调整:
CloseableHttpClient httpclient=HttpClients.createDefault();
1 HttpGet request=new HttpGet(url);
2 request.setHeader("User-Agent","Mozilla/5.0(Windows NT 6.1;WOW64)...");
3 CloseableHttpResponse response=httpclient.execute(request);
4
5//read response
6
步骤S403,根据所述http请求,通过所述摸爬应用程序抓取网页前端的数 据。
具体地,所述应用服务器2利用网页摸爬程序根据预配置好的摸爬规则抓 取网页组件数据,所述网页组件数据包括每个菜单栏、输入框、页面等包含 的数据。
在本实施例中,所述应用服务器2通过所述摸爬程序在抓取数据的同时, 还生成网页抓取日志。所述应用服务器2根据所述网页数据抓取日志,判断 抓取的网页前端的数据是否已经齐全。若所述抓取的网页前端的数据没有齐 全,则重新执行所述摸爬应用程序,以重新抓取网页前端的数据,直到抓取 齐全所述网页前端的数据。
步骤S404,根据所述摸爬应用程序抓取的网页前端的数据生成性能测试 脚本。
具体地,所述应用服务器2根据所述网页数据抓取日志分析抓取到的网 页前端数据的层级关系,即根据网页抓取日志对抓取的数据及所述数据涉及 的数据判断出所述网页摸爬程序抓取的网页组件数据的层级关系,并生成相 应的树状结构图。进一步,所述应用服务器2根据所述层级关系生成数据树 状结构图,生成性能测试脚本。
在本实施例中,所述树状结构图为XML文件,XML文件包含有网页组 件数据之间的层级关系信息。进一步地,所述应用服务器按2照该树状结构 图的XML文件逻辑生成对应的组件展示页面的XML文件,此时的XML文 件包含有网页组件数据之间的层级关系信息及网页的附加参数信息。最后, 根据所述组件展示页面的XML文件及附加参数信息生成性能测试脚本。
步骤S405,将所述摸爬应用程序抓取的网页前端的数据及所述性能测试 脚本发送至后端。
具体地,为了避免在前端针对每一个网页进行回归测试,造成浪费测试 资源的缺陷,所述应用服务器2根据所述http请求,将所述网页摸爬程序抓 取齐全的网页组件数据及所述性能测试脚本全部打包发送至后端,以实现在 后端进行测试。
步骤S406,在后端执行所述性能测试脚本,以在后端完成回归测试。
具体地,在后端运行所述性能测试脚本,实现了在后端快速完成所有页 面的回归测试。快速的验证网页代码修改对于网页原始功能是否受到影响。
通过上述步骤S401-S406,本发明提出的自动化测试方法,首先,配置摸 爬应用程序;然后,当接收到测试网页请求时,模拟前端向后端发送http请 求;进一步地,根据所述http请求,通过所述摸爬应用程序抓取网页前端的 数据;进而,根据所述数据生成性能测试脚本;接着,将所述数据及所述性 能测试脚本发送至后端;最后,在后端执行所述性能测试脚本,以在后端完 成回归测试。这样,避免现有技术中致当网页有一些细微的改动,都要在前 端针对每一个网页做大量的回归测试,耗费测试资源的缺陷,同时提高测试 效率。
如图5所示,是本发明自动化测试方法的第二实施例的流程示意图。本实 施例中,所述自动化测试方法与上述第一实施例的区别在于该方法还包括步 骤S501-S502。
该方法包括以下步骤:
步骤S501,根据所述网页测试请求获取网页测试任务,将多个测试任务 集成在一个测试脚本。
通常地,在网页项目中若未单独开放出接口,大量并发的测试(如一个 系统的登录测试)在测试过程中一般会疏忽。
因此,在本实施例中,当所述应用服务器2接收到测试网页请求时,根据 接收到测试网页请求获取测试任务,并将多个测试任务集成在一个测试脚本。 其中,所述多个测试任务为多个用户的行为测试,所述用户的行为包括但不 限于网页登陆、发帖、下订单等等,从而了解多用户并发访问同一个网页、 模块、数据时是否产生隐藏的并发问题,如内存泄漏、线程锁、资源争用问 题、服务器崩溃等问题。
步骤S502,将集成有多个测试任务的测试脚本文件及数据传送至后端。
具体地,以网页的测试登陆为例说明,如果网页项目没有单独开放出测 试接口,网页每次只能测试一个用户的登陆,进而不能测试网页的响应性能。 假如说某网页的要求为每秒最大可以处理100个登陆请求,则通过集成有100 个测试任务(即100个登陆请求)的测试脚本文件测试并发用户来执行登陆操 作,然后观察系统在不同负载下的响应时间和每秒事务数。如果用户数在100 的时候,响应时间还在允许范围,表示并发测试通过。
在本实施例中,通过将多个测试任务的配置文件集成在一个测试脚本, 并在后端运行测试脚本,实现了网页的并发测试。
通过上述步骤S501-502,本发明所提出的基于自动化测试方法可以根据所 述网页测试请求获取网页测试任务,将多个测试任务集成在一个测试脚本, 将集成有多个测试任务的测试脚本文件及数据传送至后端,实现了在后端后 端运行测试脚本,完成并发测试。
上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述 实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通 过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的 技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体 现出来,该计算机软件产品存储在一个存储介质(如ROM/RAM、磁碟、光盘) 中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器, 空调器,或者网络设备等)执行本发明各个实施例所述的方法。
以上仅为本发明的优选实施例,并非因此限制本发明的专利范围,凡是 利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间 接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。

Claims (10)

1.一种自动化测试方法,应用于应用服务器,其特征在于,该方法包括步骤:
配置摸爬应用程序;
当网页前端发生改变而发出测试网页请求,且所述应用服务器在接受到该测试网页请求时,模拟前端向后端发送的http请求;
根据所述http请求,通过所述摸爬应用程序抓取网页前端的数据;
根据所述摸爬应用程序抓取到的网页前端的数据生成性能测试脚本;
将所述摸爬应用程序抓取到的网页前端的数据及所述性能测试脚本发送至后端;及
在后端执行所述性能测试脚本,以在后端完成回归测试。
2.如权利要求1所述的自动化测试方法,其特征在于,所述根据所述http请求,通过所述摸爬应用程序抓取网页前端的数据的步骤之后,还包括如下步骤:
生成网页数据抓取日志;
根据所述网页数据抓取日志,判断抓取的网页前端的数据是否已经齐全;
若所述抓取的网页前端的数据没有齐全,则重新执行所述摸爬应用程序直到抓取齐全所述网页前端的数据。
3.如权利要求2所述的自动化测试方法,其特征在于,所述根据所述数据生成性能测试脚本的步骤,具体包括如下步骤:
根据所述网页数据抓取日志分析抓取到的网页前端数据的层级关系;
根据所述层级关系生成数据树状结构图,进而生成性能测试脚本。
4.如权利要求1所述的自动化测试方法,其特征在于,所述将所述数据及所述性能测试脚本发送至后端的步骤,具体包括如下步骤:
根据所述网页测试请求获取网页测试任务,将多个测试任务集成在一个测试脚本;
将集成有多个测试任务的测试脚本文件及数据传送至后端。
5.如权利要求1-4任一所述的自动化测试方法,其特征在于,当接收到测试网页请求时,模拟前端向后端发送http请求的步骤中,当接收到测试网页请求时,通过HttpClient模拟前端向后端发送http请求。
6.一种应用服务器,其特征在于,所述应用服务器包括存储器、处理器,所述存储器上存储有可在所述处理器上运行的自动化测试系统,所述自动化测试系统被所述处理器执行时实现如下步骤:
配置摸爬应用程序;
当网页前端发生改变而发出测试网页请求,且所述应用服务器在接受到该测试网页请求时,模拟前端向后端发送的http请求;
根据所述http请求,通过所述摸爬应用程序抓取网页前端的数据;
根据所述摸爬应用程序抓取到的网页前端的数据生成性能测试脚本;
将所述摸爬应用程序抓取到的网页前端的数据及所述性能测试脚本发送至后端;及
在后端执行所述性能测试脚本,以在后端完成回归测试。
7.如权利要求6所述的应用服务器,其特征在于,所述根据所述http请求,通过所述摸爬应用程序抓取网页前端的数据的步骤之后,还包括如下步骤:
生成网页数据抓取日志;
根据所述网页数据抓取日志,判断抓取的网页前端的数据是否已经齐全;
若所述抓取的网页前端的数据没有齐全,则重新执行所述摸爬应用程序,直到抓取齐全所述网页前端的数据。
8.如权利要求7所述的应用服务器,其特征在于,所述根据所述数据生成性能测试脚本的步骤,具体包括如下步骤:
根据所述网页数据抓取日志分析抓取到的网页前端数据的层级关系;
根据所述层级关系生成数据树状结构图,进而生成性能测试脚本。
9.如权利要求6所述的应用服务器,其特征在于,所述将所述数据及所述性能测试脚本发送至后端的步骤,具体包括如下步骤:
根据所述网页测试请求获取网页测试任务,将多个测试任务集成在一个测试脚本;
将集成有多个测试任务的测试脚本文件及数据传送至后端。
10.一种计算机可读存储介质,所述计算机可读存储介质存储有自动化测试系统,所述自动化测试系统可被至少一个处理器执行,以使所述至少一个处理器执行如权利要求1-5中任一项所述的自动化测试方法的步骤。
CN201810067253.9A 2018-01-24 2018-01-24 自动化测试方法、应用服务器及计算机可读存储介质 Active CN108427639B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201810067253.9A CN108427639B (zh) 2018-01-24 2018-01-24 自动化测试方法、应用服务器及计算机可读存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201810067253.9A CN108427639B (zh) 2018-01-24 2018-01-24 自动化测试方法、应用服务器及计算机可读存储介质

Publications (2)

Publication Number Publication Date
CN108427639A true CN108427639A (zh) 2018-08-21
CN108427639B CN108427639B (zh) 2021-05-07

Family

ID=63156071

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201810067253.9A Active CN108427639B (zh) 2018-01-24 2018-01-24 自动化测试方法、应用服务器及计算机可读存储介质

Country Status (1)

Country Link
CN (1) CN108427639B (zh)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110287096A (zh) * 2019-05-20 2019-09-27 深圳壹账通智能科技有限公司 H5前端页面测试方法、电子装置及计算机可读存储介质
CN110287098A (zh) * 2019-05-21 2019-09-27 深圳壹账通智能科技有限公司 自动创建测试脚本方法、服务器及计算机可读存储介质
CN113312266A (zh) * 2021-06-11 2021-08-27 成都精灵云科技有限公司 基于自动化测试快速生成测试拓扑结构图的系统及其方法
CN113485880A (zh) * 2021-07-12 2021-10-08 浙江网商银行股份有限公司 测试方法及装置

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20110173178A1 (en) * 2002-06-19 2011-07-14 Craig Conboy Method and system for obtaining script related information for website crawling
CN102508779A (zh) * 2011-11-17 2012-06-20 北京北纬点易信息技术有限公司 基于网络爬虫日志的性能测试脚本自动化生成系统及方法
CN102622443A (zh) * 2012-03-13 2012-08-01 北京邮电大学 一种面向微博的定制化筛选系统及方法
CN104965904A (zh) * 2015-06-30 2015-10-07 北京奇虎科技有限公司 一种多平台数据的抓取方法和装置
CN106776339A (zh) * 2016-12-30 2017-05-31 上海亿账通互联网科技有限公司 自动化测试方法及装置
CN107465682A (zh) * 2017-08-10 2017-12-12 深圳市华傲数据技术有限公司 爬虫登录目标网站的实现方法及系统

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20110173178A1 (en) * 2002-06-19 2011-07-14 Craig Conboy Method and system for obtaining script related information for website crawling
CN102508779A (zh) * 2011-11-17 2012-06-20 北京北纬点易信息技术有限公司 基于网络爬虫日志的性能测试脚本自动化生成系统及方法
CN102622443A (zh) * 2012-03-13 2012-08-01 北京邮电大学 一种面向微博的定制化筛选系统及方法
CN104965904A (zh) * 2015-06-30 2015-10-07 北京奇虎科技有限公司 一种多平台数据的抓取方法和装置
CN106776339A (zh) * 2016-12-30 2017-05-31 上海亿账通互联网科技有限公司 自动化测试方法及装置
CN107465682A (zh) * 2017-08-10 2017-12-12 深圳市华傲数据技术有限公司 爬虫登录目标网站的实现方法及系统

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110287096A (zh) * 2019-05-20 2019-09-27 深圳壹账通智能科技有限公司 H5前端页面测试方法、电子装置及计算机可读存储介质
CN110287098A (zh) * 2019-05-21 2019-09-27 深圳壹账通智能科技有限公司 自动创建测试脚本方法、服务器及计算机可读存储介质
CN113312266A (zh) * 2021-06-11 2021-08-27 成都精灵云科技有限公司 基于自动化测试快速生成测试拓扑结构图的系统及其方法
CN113312266B (zh) * 2021-06-11 2023-09-15 成都精灵云科技有限公司 基于自动化测试快速生成测试拓扑结构图的系统及其方法
CN113485880A (zh) * 2021-07-12 2021-10-08 浙江网商银行股份有限公司 测试方法及装置

Also Published As

Publication number Publication date
CN108427639B (zh) 2021-05-07

Similar Documents

Publication Publication Date Title
CN108415832B (zh) 接口自动化测试方法、装置、设备及存储介质
CN108427639A (zh) 自动化测试方法、应用服务器及计算机可读存储介质
CN110532169A (zh) 接口测试用例生成方法、装置、计算机设备及存储介质
US9569325B2 (en) Method and system for automated test and result comparison
US8660833B2 (en) Method, computer program product and apparatus for providing an interactive network simulator
CN109302522A (zh) 测试方法、装置以及计算机系统和介质
CN111897724B (zh) 一种适用于云平台的自动化测试方法及装置
CN108073506A (zh) 测试方法和装置
CN107870989A (zh) 网页生成方法及终端设备
WO2019085466A1 (zh) 关联测试方法、系统、应用服务器及计算机可读存储介质
CN109344066A (zh) 一种浏览器页面的测试方法、系统及终端
CN114095567A (zh) 数据访问请求的处理方法、装置、计算机设备及介质
CN111666201A (zh) 回归测试方法、装置、介质及电子设备
CN109495553A (zh) 一种网页显示控制方法、系统及反向代理服务器
CN113722114A (zh) 一种数据服务的处理方法、装置、计算设备及存储介质
CN108427635A (zh) 快速测试web页面的方法、服务器及计算机可读存储介质
CN117331846B (zh) 一种基于互联网软件开发运行测试管理系统
CN114116509A (zh) 程序分析方法、装置、电子设备和存储介质
CN108763052A (zh) 一种虚拟现实软件内存回收机制的性能检测方法及系统
CN115982045A (zh) 接口自动化测试校验方法、装置、电子设备及存储介质
CN113641628B (zh) 数据质量检测方法、装置、设备及存储介质
CN115934537A (zh) 接口测试工具生成方法、装置、设备、介质及产品
CN114564387A (zh) 一种针对OpenStack云平台的场景式自动化测试方法及系统
CN114637672A (zh) 自动化数据测试方法、装置、计算机设备及存储介质
CN105553759A (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
GR01 Patent grant
GR01 Patent grant