CN108984394A - 一种测试方法、计算机可读存储介质及终端设备 - Google Patents
一种测试方法、计算机可读存储介质及终端设备 Download PDFInfo
- Publication number
- CN108984394A CN108984394A CN201810630780.6A CN201810630780A CN108984394A CN 108984394 A CN108984394 A CN 108984394A CN 201810630780 A CN201810630780 A CN 201810630780A CN 108984394 A CN108984394 A CN 108984394A
- Authority
- CN
- China
- Prior art keywords
- operation module
- module
- sequence
- test
- field
- 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
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/36—Preventing errors by testing or debugging software
- G06F11/3668—Software testing
- G06F11/3672—Test management
- G06F11/3688—Test 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
本发明属于计算机技术领域,尤其涉及一种测试方法、计算机可读存储介质及终端设备。所述方法在测试请求中预设了第一字段和第二字段,其中,第一字段可以指示是否存在测试前操作,第二字段可以确定所述测试前操作对应的操作模块序列,在获取到测试请求后,若提取出的第一字段指示存在测试前操作,则提取第二字段,并根据第二字段的取值确定所述测试前操作对应的操作模块序列,最后依次运行操作模块序列中的各个操作模块,以完成所述测试前操作。通过本发明,无需人工介入,即可自动根据测试请求中的字段内容执行相应的测试准备过程,大大提高了测试效率。
Description
技术领域
本发明属于计算机技术领域,尤其涉及一种测试方法、计算机可读存储介质及终端设备。
背景技术
在进行测试工作时,常常需要由测试人员人工执行一个很长的测试准备过程才能达到真正的测试点,期间会涉及***登录登出、***切换及大量数据的输入。以对某一页面的特定功能进行测试为例,首先要经过以下步骤:
1、打开浏览器;
2、在浏览器的地址栏中输入网页地址并点击查询;
3、在网页中点击登录链接,在登录界面输入账号、密码等登录信息并点击登录按钮;
4、点击网页中的与待测试的特定功能对应的页面链接,跳转至该特定功能的页面。
在完成了以上步骤后,才能在当前的页面对该特定功能进行测试。在目前的测试中,以上的这些测试准备过程都是由人工完成的,每次测试都需要测试人员反复地执行以上动作,效率极为低下。
发明内容
有鉴于此,本发明实施例提供了一种测试方法、计算机可读存储介质及终端设备,以解决人工执行测试准备过程效率极为低下的问题。
本发明实施例的第一方面提供了一种测试方法,可以包括:
获取测试请求,并按照预设的第一规则从所述测试请求中提取第一字段,所述第一字段用于指示是否存在测试前操作;
若所述第一字段指示存在测试前操作,则按照预设的第二规则从所述测试请求中提取第二字段;
根据所述第二字段的取值确定所述测试前操作对应的操作模块序列,所述操作模块序列包括至少一个操作模块,所述操作模块用于执行指定的操作;
依次运行所述操作模块序列中的各个操作模块,以完成所述测试前操作。
本发明实施例的第二方面提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机可读指令,所述计算机可读指令被处理器执行时实现如下步骤:
获取测试请求,并按照预设的第一规则从所述测试请求中提取第一字段,所述第一字段用于指示是否存在测试前操作;
若所述第一字段指示存在测试前操作,则按照预设的第二规则从所述测试请求中提取第二字段;
根据所述第二字段的取值确定所述测试前操作对应的操作模块序列,所述操作模块序列包括至少一个操作模块,所述操作模块用于执行指定的操作;
依次运行所述操作模块序列中的各个操作模块,以完成所述测试前操作。
本发明实施例的第三方面提供了一种测试终端设备,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机可读指令,所述处理器执行所述计算机可读指令时实现如下步骤:
获取测试请求,并按照预设的第一规则从所述测试请求中提取第一字段,所述第一字段用于指示是否存在测试前操作;
若所述第一字段指示存在测试前操作,则按照预设的第二规则从所述测试请求中提取第二字段;
根据所述第二字段的取值确定所述测试前操作对应的操作模块序列,所述操作模块序列包括至少一个操作模块,所述操作模块用于执行指定的操作;
依次运行所述操作模块序列中的各个操作模块,以完成所述测试前操作。
本发明实施例与现有技术相比存在的有益效果是:本发明实施例在测试请求中预设了第一字段和第二字段,其中,第一字段可以指示是否存在测试前操作,第二字段可以确定所述测试前操作对应的操作模块序列,在获取到测试请求后,若提取出的第一字段指示存在测试前操作,则提取第二字段,并根据第二字段的取值确定所述测试前操作对应的操作模块序列,最后依次运行操作模块序列中的各个操作模块,以完成所述测试前操作。通过本发明,无需人工介入,即可自动根据测试请求中的字段内容执行相应的测试准备过程,大大提高了测试效率。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其它的附图。
图1为本发明实施例中一种测试方法的一个实施例流程图;
图2为一种操作模块关系树的示意图;
图3为根据第二字段的取值确定测试前操作对应的操作模块序列的示意流程图;
图4为依次运行操作模块序列中的各个操作模块的示意流程图;
图5为本发明实施例中一种测试装置的一个实施例结构图;
图6为本发明实施例中一种测试终端设备的示意框图。
具体实施方式
为使得本发明的发明目的、特征、优点能够更加的明显和易懂,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,下面所描述的实施例仅仅是本发明一部分实施例,而非全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其它实施例,都属于本发明保护的范围。
请参阅图1,本发明实施例中一种测试方法的一个实施例可以包括:
步骤S101、获取测试请求,并按照预设的第一规则从所述测试请求中提取第一字段。
所述测试请求可以由测试人员下发,所述测试请求中包括第一字段,所述第一字段用于指示是否存在测试前操作,所述测试前操作是指需要在测试前执行的操作。
当所述第一字段取值为0时,则表示本次测试不存在测试前操作,也即不涉及过场流程,按照正式测试流程进行测试即可,当所述第一字段取值为1时,则表示本次测试存在测试前操作,也即涉及过程流程,在进行测试之前,首先需要先走完过程流程。
步骤S102、判断所述第一字段的指示是否为存在测试前操作。
若所述第一字段指示存在测试前操作,则执行步骤S103及其后续步骤,若所述第一字段指示不存在测试前操作,则执行步骤S106。
步骤S103、按照预设的第二规则从所述测试请求中提取第二字段。
所述第二字段用于确定所述测试前操作对应的操作模块序列,只有当所述第一字段取值为1时,所述测试请求中才包含所述第二字段,而当所述第一字段取值为0时,所述测试请求中并不包含所述第二字段。
步骤S104、根据所述第二字段的取值确定所述测试前操作对应的操作模块序列。
所述操作模块序列包括至少一个操作模块,所述操作模块用于执行指定的操作。本实施例预先将大量重复的过场流程的执行脚本进行模块化封装,只对外提供调用接口,测试人员可以通过对应的接口调用指令调用这些模块,自动执行这些过场流程。
例如,若当前的测试是要对网站的投保页面中保费计算的功能进行测试,则首先打开浏览器,然后在浏览器的地址栏中输入网站的网页地址并点击查询,在网站的首页显示出来后,点击网页的登录链接,在登录界面显示出来后,在登录界面输入账号、密码等登录信息并点击登录按钮,登录完成后,点击页面上的投保链接,跳转至投保页面,在完成了以上一系列的操作后,才可以在投保页面上对其中的保费计算功能进行测试。
相应地,若当前的测试是要对网站的理财页面中收益计算的功能进行测试,则在登录完成后,点击页面上的理财链接,跳转至理财页面,在完成了以上一系列的操作后,才可以在理财页面上对其中的收益计算功能进行测试。
若当前的测试是要对网站的贷款页面中额度预估的功能进行测试,则在登录完成后,点击页面上的贷款链接,跳转至贷款页面,在完成了以上一系列的操作后,才可以在贷款页面上对其中的额度预估功能进行测试。
针对以上测试场景,可以将过场流程封装为以下几个操作模块:
ExplorerOpen操作模块,执行打开浏览器的操作;
URLInput操作模块,执行网页地址输入及点击查询的操作;
LoginLinkClick操作模块,执行点击登录链接的操作;
LoginInput操作模块,执行在登录界面输入账号、密码等登录信息的操作;
LoginBottonClick操作模块,执行点击登录按钮的操作;
InsuranceLinkClick操作模块,执行点击投保链接的操作;
FinanceLinkClick操作模块,执行点击理财链接的操作;
LoanLinkClick操作模块,执行点击贷款链接的操作。
为了便于操作模块的调用,本实施例将各个操作模块按照执行的先后顺序以及业务逻辑的依赖关系构造出如图2所示的操作模块关系树,所述操作模块关系树为记录各个操作模块之间的依赖关系的树状结构,其中,Modm,n表示第m层级的第n个操作模块,第m+1层级的操作模块的执行需要在第m层级的操作模块已执行的基础上才可执行,即根据业务逻辑,越早执行的操作模块,其层级也越高,越晚执行的操作模块,其层级也越低。
仍以上述测试场景进行说明,其业务逻辑顺序为:打开浏览器→执行网页地址输入及点击查询→点击登录链接→在登录界面输入账号、密码等登录信息→点击登录按钮→点击投保链接或点击理财链接或点击贷款链接。
则ExplorerOpen为第一层级操作模块,URLInput操作模块为第二层级操作模块,LoginLinkClick为第三层级操作模块,LoginInput为第四层级操作模块,LoginBottonClick为第五层级操作模块,InsuranceLinkClick、FinanceLinkClick、LoanLinkClick均为第六层级操作模块。
在构建好上述操作模块关系树之后,将该操作模块关系树存储在数据库中,以备后续查询使用。在操作模块关系树构建完成的前提下,步骤S104具体可包括如图3所示的步骤:
步骤S1041、在预设的操作模块列表中查询与所述第二字段的取值对应的操作模块,并将查找到的操作模块确定为目标操作模块。
所述操作模块列表记录了所述第二字段的各个取值与各个操作模块之间的对应关系,下表即为所述操作模块列表的一个示例:
第二字段取值 | 操作模块 |
取值1 | 操作模块1 |
取值2 | 操作模块2 |
取值3 | 操作模块3 |
………… | ………… |
若所述第二字段的取值为取值2,则通过查表可确定与其对应的操作模块为操作模块2,也即目标操作模块为操作模块2。
步骤S1042、在预设的操作模块关系树中查询所述目标操作模块的执行所依赖的各个操作模块。
具体地,首先将所述目标操作模块标记为当前操作模块,并在所述操作模块关系树中查询所述当前操作模块的层级。然后判断所述当前操作模块的层级是否为所述操作模块关系树中的最高层级,若所述当前操作模块的层级不是所述操作模块关系树中的最高层级,则在所述操作模块关系树中查询所述当前操作模块在上一层级中所依赖的操作模块,并将查询到的操作模块确定为所述目标操作模块的执行所依赖的操作模块,再将查询到的操作模块标记为新的当前操作模块,返回执行所述判断所述当前操作模块的层级是否为所述操作模块关系树中的最高层级的步骤,直至所述当前操作模块的层级为所述操作模块关系树中的最高层级为止。
以图2所示的操作模块关系树为例,若所述目标操作模块为Mod4,2,则根据上述方法依次查询其执行所依赖的各个操作模块分别为:Mod3,1、Mod2,1、Mod1,1。
步骤S1043、将所述目标操作模块的执行所依赖的各个操作模块和所述目标操作模块按照预设的执行顺序排列为所述操作模块序列。
仍以上述例子进行说明,则操作模块序列应为:
Mod1,1→Mod2,1→Mod3,1→Mod4,2
通过对所述操作模块序列中的各个操作模块的调用,既可实现整个过程流程的自动化运行。
步骤S105、依次运行所述操作模块序列中的各个操作模块,以完成所述测试前操作。
具体地,步骤S105可以包括如图4所示的步骤:
步骤S1051、从所述操作模块序列中选取排序在第一位的操作模块作为优先操作模块。
步骤S1052、在预设的存储地址列表中查询与所述优先操作模块对应的存储地址。
所述存储地址列表记录了各个操作模块和各个存储地址之间的对应关系,下表即为所述存储地址列表的一个示例:
步骤S1053、从查询到的所述存储地址中提取所述优先操作模块的脚本,并运行所述优先操作模块的脚本。
步骤S1054、在预设的间隔时间列表中查询与所述优先操作模块对应的等待时长。
所述等待时长列表记录了各个操作模块和各个等待时长之间的对应关系。下表即为所述等待时长列表的一个示例:
操作模块 | 等待时长 |
操作模块1 | 等待时长1 |
操作模块2 | 等待时长2 |
操作模块3 | 等待时长3 |
………… | ………… |
所述等待时长列表的预设过程可以包括:
首先,获取在预设的统计时段内的历史记录。
所述统计时段可以根据实际情况进行设置,例如,可以将其设置为1天、1周、1个月或者其它的取值。
然后,根据所述历史记录分别统计各个操作模块的运行次数以及每次运行的反应时长。
所述反应时长为从操作模块开始运行到接收到运行结果之间的时长。
最后,根据下式计算与各个操作模块分别对应的等待时长:
其中,m为操作模块的序号,1≤m≤M,M为操作模块的数目,Nm为第m个操作模块的运行次数,n为各次运行的序号,1≤n≤Nm,ReactDurm,n为第m个操作模块第n次运行的反应时间,MaxReactDurm为第m个操作模块的最大反应时间,且λ为预设的系数,且λ>1,Max为求最大值函数,Min为求最小值函数,WaitDurm为与第m个操作模块对应的等待时长。
步骤S1055、在等待与所述优先操作模块对应的等待时长后,将所述优先操作模块从所述操作模块序列中删除。
步骤S1056、判断所述操作模块序列是否为空;
若所述操作模块序列不为空,则返回执行步骤S1051,若所述操作模块序列为空,则执行步骤S1057。
步骤S1057、确定所述测试前操作均已完成。
需要注意的是,以上的执行过程全部是由测试终端设备自动完成的,整个过程完全无需测试人员的参与,即正式测试流程前的整个过场流程对测试人员而言可视为一个黑盒处理过程,无需关注其具体实现细节,从而减少了测试人员的重复性劳动。
步骤S106、执行正式测试流程。
该正式测试流程即为对本次测试真正的关键测试点进行测试,若当前的测试是要对网站的投保页面中保费计算的功能进行测试,则可以在投保页面上对其中的保费计算功能进行测试,若当前的测试是要对网站的理财页面中收益计算的功能进行测试,则可以在理财页面上对其中的收益计算功能进行测试,若当前的测试是要对网站的贷款页面中额度预估的功能进行测试,则可以在贷款页面上对其中的额度预估功能进行测试。
综上所述,本发明实施例在测试请求中预设了第一字段和第二字段,其中,第一字段可以指示是否存在测试前操作,第二字段可以确定所述测试前操作对应的操作模块序列,在获取到测试请求后,若提取出的第一字段指示存在测试前操作,则提取第二字段,并根据第二字段的取值确定所述测试前操作对应的操作模块序列,最后依次运行操作模块序列中的各个操作模块,以完成测试前操作。通过本发明,无需人工介入,即可自动根据测试请求中的字段内容执行相应的测试准备过程,大大提高了测试效率。
应理解,上述实施例中各步骤的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本发明实施例的实施过程构成任何限定。
对应于上文实施例所述的一种测试方法,图5示出了本发明实施例提供的一种测试装置的一个实施例结构图。
本实施例中,一种测试装置可以包括:
测试请求获取模块501,用于获取测试请求;
第一字段提取模块502,用于按照预设的第一规则从所述测试请求中提取第一字段,所述第一字段用于指示是否存在测试前操作;
第二字段提取模块503,用于若所述第一字段指示存在测试前操作,则按照预设的第二规则从所述测试请求中提取第二字段;
操作模块序列确定模块504,用于根据所述第二字段的取值确定所述测试前操作对应的操作模块序列,所述操作模块序列包括至少一个操作模块,所述操作模块用于执行指定的操作;
操作模块序列执行模块505,用于依次运行所述操作模块序列中的各个操作模块,以完成所述测试前操作。
进一步地,所述操作模块序列确定模块可以包括:
目标操作模块确定单元,用于在预设的操作模块列表中查询与所述第二字段的取值对应的操作模块,并将查找到的操作模块确定为目标操作模块,所述操作模块列表记录了所述第二字段的各个取值与各个操作模块之间的对应关系;
关系树查询单元,用于在预设的操作模块关系树中查询所述目标操作模块的执行所依赖的各个操作模块,所述操作模块关系树为记录各个操作模块之间的依赖关系的树状结构;
操作模块序列排列单元,用于将所述目标操作模块的执行所依赖的各个操作模块和所述目标操作模块按照预设的执行顺序排列为所述操作模块序列。
进一步地,所述关系树查询单元可以包括:
层级查询子单元,用于将所述目标操作模块标记为当前操作模块,并在所述操作模块关系树中查询所述当前操作模块的层级;
层级判断子单元,用于判断所述当前操作模块的层级是否为所述操作模块关系树中的最高层级;
上层模块查询子单元,用于若所述当前操作模块的层级不是所述操作模块关系树中的最高层级,则在所述操作模块关系树中查询所述当前操作模块在上一层级中所依赖的操作模块,并将查询到的操作模块确定为所述目标操作模块的执行所依赖的操作模块;
当前操作模块标记子单元,用于将查询到的操作模块标记为新的当前操作模块。
进一步地,所述操作模块序列执行模块可以包括:
优先操作模块选取单元,用于从所述操作模块序列中选取排序在第一位的操作模块作为优先操作模块;
存储地址查询单元,用于在预设的存储地址列表中查询与所述优先操作模块对应的存储地址,所述存储地址列表记录了各个操作模块和各个存储地址之间的对应关系;
脚本提取单元,用于从查询到的所述存储地址中提取所述优先操作模块的脚本,并运行所述优先操作模块的脚本;
等待时长查询单元,用于在预设的间隔时间列表中查询与所述优先操作模块对应的等待时长,所述等待时长列表记录了各个操作模块和各个等待时长之间的对应关系;
操作模块删除单元,用于在等待与所述优先操作模块对应的等待时长后,将所述优先操作模块从所述操作模块序列中删除;
操作模块序列判断单元,用于判断所述操作模块序列是否为空。
进一步地,所述测试装置还可以包括:
历史记录获取模块,用于获取在预设的统计时段内的历史记录;
历史记录统计模块,用于根据所述历史记录分别统计各个操作模块的运行次数以及每次运行的反应时长,所述反应时长为从操作模块开始运行到接收到运行结果之间的时长;
等待时长计算模块,用于根据下式计算与各个操作模块分别对应的等待时长:
其中,m为操作模块的序号,1≤m≤M,M为操作模块的数目,Nm为第m个操作模块的运行次数,n为各次运行的序号,1≤n≤Nm,ReactDurm,n为第m个操作模块第n次运行的反应时间,MaxReactDurm为第m个操作模块的最大反应时间,且λ为预设的系数,且λ>1,Max为求最大值函数,Min为求最小值函数,WaitDurm为与第m个操作模块对应的等待时长。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的装置,模块和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述或记载的部分,可以参见其它实施例的相关描述。
图6示出了本发明实施例提供的一种测试终端设备的示意框图,为了便于说明,仅示出了与本发明实施例相关的部分。
在本实施例中,所述测试终端设备6可以是桌上型计算机、笔记本、掌上电脑及云端服务器等计算设备。该测试终端设备6可包括:处理器60、存储器61以及存储在所述存储器61中并可在所述处理器60上运行的计算机可读指令62,例如执行上述的测试方法的计算机可读指令。所述处理器60执行所述计算机可读指令62时实现上述各个测试方法实施例中的步骤,例如图1所示的步骤S101至S106。或者,所述处理器60执行所述计算机可读指令62时实现上述各装置实施例中各模块/单元的功能,例如图5所示模块501至505的功能。
示例性的,所述计算机可读指令62可以被分割成一个或多个模块/单元,所述一个或者多个模块/单元被存储在所述存储器61中,并由所述处理器60执行,以完成本发明。所述一个或多个模块/单元可以是能够完成特定功能的一系列计算机可读指令段,该指令段用于描述所述计算机可读指令62在所述测试终端设备6中的执行过程。
所述处理器60可以是中央处理单元(Central Processing Unit,CPU),还可以是其它通用处理器、数字信号处理器(Digital Signal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现场可编程门阵列(Field-Programmable Gate Array,FPGA)或者其它可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
所述存储器61可以是所述测试终端设备6的内部存储单元,例如测试终端设备6的硬盘或内存。所述存储器61也可以是所述测试终端设备6的外部存储设备,例如所述测试终端设备6上配备的插接式硬盘,智能存储卡(Smart Media Card,SMC),安全数字(SecureDigital,SD)卡,闪存卡(Flash Card)等。进一步地,所述存储器61还可以既包括所述测试终端设备6的内部存储单元也包括外部存储设备。所述存储器61用于存储所述计算机可读指令以及所述测试终端设备6所需的其它指令和数据。所述存储器61还可以用于暂时地存储已经输出或者将要输出的数据。
在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干计算机可读指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储计算机可读指令的介质。
以上所述实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。
Claims (10)
1.一种测试方法,其特征在于,包括:
获取测试请求,并按照预设的第一规则从所述测试请求中提取第一字段,所述第一字段用于指示是否存在测试前操作;
若所述第一字段指示存在测试前操作,则按照预设的第二规则从所述测试请求中提取第二字段;
根据所述第二字段的取值确定所述测试前操作对应的操作模块序列,所述操作模块序列包括至少一个操作模块,所述操作模块用于执行指定的操作;
依次运行所述操作模块序列中的各个操作模块,以完成所述测试前操作。
2.根据权利要求1所述的测试方法,其特征在于,所述根据所述第二字段的取值确定所述测试前操作对应的操作模块序列包括:
在预设的操作模块列表中查询与所述第二字段的取值对应的操作模块,并将查找到的操作模块确定为目标操作模块,所述操作模块列表记录了所述第二字段的各个取值与各个操作模块之间的对应关系;
在预设的操作模块关系树中查询所述目标操作模块的执行所依赖的各个操作模块,所述操作模块关系树为记录各个操作模块之间的依赖关系的树状结构;
将所述目标操作模块的执行所依赖的各个操作模块和所述目标操作模块按照预设的执行顺序排列为所述操作模块序列。
3.根据权利要求2所述的测试方法,其特征在于,所述在预设的操作模块关系树中查询所述目标操作模块的执行所依赖的各个操作模块包括:
将所述目标操作模块标记为当前操作模块,并在所述操作模块关系树中查询所述当前操作模块的层级;
判断所述当前操作模块的层级是否为所述操作模块关系树中的最高层级;
若所述当前操作模块的层级不是所述操作模块关系树中的最高层级,则在所述操作模块关系树中查询所述当前操作模块在上一层级中所依赖的操作模块,并将查询到的操作模块确定为所述目标操作模块的执行所依赖的操作模块;
将查询到的操作模块标记为新的当前操作模块,返回执行所述判断所述当前操作模块的层级是否为所述操作模块关系树中的最高层级的步骤,直至所述当前操作模块的层级为所述操作模块关系树中的最高层级为止。
4.根据权利要求1至3中任一项所述的测试方法,其特征在于,所述依次运行所述操作模块序列中的各个操作模块包括:
从所述操作模块序列中选取排序在第一位的操作模块作为优先操作模块;
在预设的存储地址列表中查询与所述优先操作模块对应的存储地址,所述存储地址列表记录了各个操作模块和各个存储地址之间的对应关系;
从查询到的所述存储地址中提取所述优先操作模块的脚本,并运行所述优先操作模块的脚本;
在预设的间隔时间列表中查询与所述优先操作模块对应的等待时长,所述等待时长列表记录了各个操作模块和各个等待时长之间的对应关系;
在等待与所述优先操作模块对应的等待时长后,将所述优先操作模块从所述操作模块序列中删除;
判断所述操作模块序列是否为空;
若所述操作模块序列不为空,则返回执行所述从所述操作模块序列中选取排序在第一位的操作模块作为优先操作模块的步骤,直至所述操作模块序列为空为止。
5.根据权利要求4所述的测试方法,其特征在于,所述等待时长列表的预设过程包括:
获取在预设的统计时段内的历史记录;
根据所述历史记录分别统计各个操作模块的运行次数以及每次运行的反应时长,所述反应时长为从操作模块开始运行到接收到运行结果之间的时长;
根据下式计算与各个操作模块分别对应的等待时长:
其中,m为操作模块的序号,1≤m≤M,M为操作模块的数目,Nm为第m个操作模块的运行次数,n为各次运行的序号,1≤n≤Nm,ReactDurm,n为第m个操作模块第n次运行的反应时间,MaxReactDurm为第m个操作模块的最大反应时间,且λ为预设的系数,且λ>1,Max为求最大值函数,Min为求最小值函数,WaitDurm为与第m个操作模块对应的等待时长。
6.一种计算机可读存储介质,所述计算机可读存储介质存储有计算机可读指令,其特征在于,所述计算机可读指令被处理器执行时实现如权利要求1至5中任一项所述的测试方法的步骤。
7.一种测试终端设备,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机可读指令,其特征在于,所述处理器执行所述计算机可读指令时实现如下步骤:
获取测试请求,并按照预设的第一规则从所述测试请求中提取第一字段,所述第一字段用于指示是否存在测试前操作;
若所述第一字段指示存在测试前操作,则按照预设的第二规则从所述测试请求中提取第二字段;
根据所述第二字段的取值确定所述测试前操作对应的操作模块序列,所述操作模块序列包括至少一个操作模块,所述操作模块用于执行指定的操作;
依次运行所述操作模块序列中的各个操作模块,以完成所述测试前操作。
8.根据权利要求7所述的测试终端设备,其特征在于,所述根据所述第二字段的取值确定所述测试前操作对应的操作模块序列包括:
在预设的操作模块列表中查询与所述第二字段的取值对应的操作模块,并将查找到的操作模块确定为目标操作模块,所述操作模块列表记录了所述第二字段的各个取值与各个操作模块之间的对应关系;
在预设的操作模块关系树中查询所述目标操作模块的执行所依赖的各个操作模块,所述操作模块关系树为记录各个操作模块之间的依赖关系的树状结构;
将所述目标操作模块的执行所依赖的各个操作模块和所述目标操作模块按照预设的执行顺序排列为所述操作模块序列。
9.根据权利要求7所述的测试终端设备,其特征在于,所述在预设的操作模块关系树中查询所述目标操作模块的执行所依赖的各个操作模块包括:
将所述目标操作模块标记为当前操作模块,并在所述操作模块关系树中查询所述当前操作模块的层级;
判断所述当前操作模块的层级是否为所述操作模块关系树中的最高层级;
若所述当前操作模块的层级不是所述操作模块关系树中的最高层级,则在所述操作模块关系树中查询所述当前操作模块在上一层级中所依赖的操作模块,并将查询到的操作模块确定为所述目标操作模块的执行所依赖的操作模块;
将查询到的操作模块标记为新的当前操作模块,返回执行所述判断所述当前操作模块的层级是否为所述操作模块关系树中的最高层级的步骤,直至所述当前操作模块的层级为所述操作模块关系树中的最高层级为止。
10.根据权利要求7至9中任一项所述的测试终端设备,其特征在于,所述依次运行所述操作模块序列中的各个操作模块包括:
从所述操作模块序列中选取排序在第一位的操作模块作为优先操作模块;
在预设的存储地址列表中查询与所述优先操作模块对应的存储地址,所述存储地址列表记录了各个操作模块和各个存储地址之间的对应关系;
从查询到的所述存储地址中提取所述优先操作模块的脚本,并运行所述优先操作模块的脚本;
在预设的间隔时间列表中查询与所述优先操作模块对应的等待时长,所述等待时长列表记录了各个操作模块和各个等待时长之间的对应关系;
在等待与所述优先操作模块对应的等待时长后,将所述优先操作模块从所述操作模块序列中删除;
判断所述操作模块序列是否为空;
若所述操作模块序列不为空,则返回执行所述从所述操作模块序列中选取排序在第一位的操作模块作为优先操作模块的步骤,直至所述操作模块序列为空为止。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810630780.6A CN108984394A (zh) | 2018-06-19 | 2018-06-19 | 一种测试方法、计算机可读存储介质及终端设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810630780.6A CN108984394A (zh) | 2018-06-19 | 2018-06-19 | 一种测试方法、计算机可读存储介质及终端设备 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN108984394A true CN108984394A (zh) | 2018-12-11 |
Family
ID=64540659
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810630780.6A Pending CN108984394A (zh) | 2018-06-19 | 2018-06-19 | 一种测试方法、计算机可读存储介质及终端设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN108984394A (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109889410A (zh) * | 2019-03-18 | 2019-06-14 | 北京达佳互联信息技术有限公司 | 测试业务功能的方法、装置、代理设备和可读存储介质 |
CN111477313A (zh) * | 2020-03-31 | 2020-07-31 | 苏州长光华医生物医学工程有限公司 | 化学分析仪测试项目的动态排序方法、***、存储介质 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102135938A (zh) * | 2011-03-21 | 2011-07-27 | 中国工商银行股份有限公司 | 一种软件产品测试方法及*** |
US20130139004A1 (en) * | 2011-11-28 | 2013-05-30 | Advantest Corporation | Test module generation apparatus, test procedure generation apparatus, generation method, program, and test apparatus |
CN103853663A (zh) * | 2014-03-25 | 2014-06-11 | 北京金山网络科技有限公司 | 应用程序测试方法及*** |
CN107943693A (zh) * | 2017-11-21 | 2018-04-20 | 北京安博通科技股份有限公司 | 应用软件审计测试方法及装置、应用软件审计测试*** |
-
2018
- 2018-06-19 CN CN201810630780.6A patent/CN108984394A/zh active Pending
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102135938A (zh) * | 2011-03-21 | 2011-07-27 | 中国工商银行股份有限公司 | 一种软件产品测试方法及*** |
US20130139004A1 (en) * | 2011-11-28 | 2013-05-30 | Advantest Corporation | Test module generation apparatus, test procedure generation apparatus, generation method, program, and test apparatus |
CN103853663A (zh) * | 2014-03-25 | 2014-06-11 | 北京金山网络科技有限公司 | 应用程序测试方法及*** |
CN107943693A (zh) * | 2017-11-21 | 2018-04-20 | 北京安博通科技股份有限公司 | 应用软件审计测试方法及装置、应用软件审计测试*** |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109889410A (zh) * | 2019-03-18 | 2019-06-14 | 北京达佳互联信息技术有限公司 | 测试业务功能的方法、装置、代理设备和可读存储介质 |
CN111477313A (zh) * | 2020-03-31 | 2020-07-31 | 苏州长光华医生物医学工程有限公司 | 化学分析仪测试项目的动态排序方法、***、存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109345260B (zh) | 一种异常操作行为的检测方法 | |
CN108664897A (zh) | 票据识别方法、装置及存储介质 | |
US10409796B2 (en) | Systems and methods for providing searchable customer call indexes | |
WO2020073727A1 (zh) | 风险预测方法、装置、计算机设备和存储介质 | |
CN108763277B (zh) | 一种数据分析方法、计算机可读存储介质及终端设备 | |
CN109360105A (zh) | 产品风险预警方法、装置、计算机设备和存储介质 | |
CN109472568A (zh) | 一种区块链交易方法、装置、管理***、设备及存储介质 | |
CN110400219A (zh) | 业务处理方法及***、交易监控方法及*** | |
CN110046929A (zh) | 一种欺诈团伙识别方法、装置、可读存储介质及终端设备 | |
CN108596759A (zh) | 贷款申请信息检测方法及服务器 | |
CN105894183A (zh) | 项目评价方法及装置 | |
CN108133390A (zh) | 用于预测用户行为的方法和装置以及计算设备 | |
CN109919608B (zh) | 一种高危交易主体的识别方法、装置及服务器 | |
CN114693192A (zh) | 风控决策方法、装置、计算机设备和存储介质 | |
CN107025237A (zh) | 一种页面点击分布图的生成方法及*** | |
CN108984394A (zh) | 一种测试方法、计算机可读存储介质及终端设备 | |
CA3172392A1 (en) | Systems and methods for anonymizing sensitive data and simulating accelerated schedule parameters using the anonymized data | |
CN109992506A (zh) | 调度测试方法、装置、计算机设备和存储介质 | |
CN114693409A (zh) | 产品匹配方法、装置、计算机设备、存储介质和程序产品 | |
CN110266555A (zh) | 用于分析网站服务请求的方法 | |
CN116703598A (zh) | 交易行为检测方法、装置、计算机设备和存储介质 | |
CN106651183A (zh) | 工控***的通信数据安全审计方法及装置 | |
CN115907947A (zh) | 一种企业贷款风险的预测方法及*** | |
CN114565443A (zh) | 数据处理方法、装置、计算机设备和存储介质 | |
CN111179076A (zh) | It***智能管理方法、装置及计算机可读存储介质 |
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 |