CN117453552A - 一种脚本测试顺序的调整方法、装置及存储介质 - Google Patents

一种脚本测试顺序的调整方法、装置及存储介质 Download PDF

Info

Publication number
CN117453552A
CN117453552A CN202311423148.1A CN202311423148A CN117453552A CN 117453552 A CN117453552 A CN 117453552A CN 202311423148 A CN202311423148 A CN 202311423148A CN 117453552 A CN117453552 A CN 117453552A
Authority
CN
China
Prior art keywords
script
tested
preset
target
test
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
CN202311423148.1A
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.)
Thalys Automobile Co ltd
Original Assignee
Thalys Automobile 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 Thalys Automobile Co ltd filed Critical Thalys Automobile Co ltd
Priority to CN202311423148.1A priority Critical patent/CN117453552A/zh
Publication of CN117453552A publication Critical patent/CN117453552A/zh
Pending legal-status Critical Current

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

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)
  • Test And Diagnosis Of Digital Computers (AREA)

Abstract

本申请实施例涉及测试技术领域,公开了一种脚本测试顺序的调整方法、装置及存储介质,方法包括:根据各个待测试脚本的优先级,确定出当前第一测试顺序的目标待测试脚本;将获取到的正在测试的脚本的脚本标签与目标待测试脚本的脚本标签进行匹配操作,并根据得到的匹配结果确定是否对目标待测试脚本的测试顺序进行调整;其中,互相关联的脚本之间配置有相同的脚本标签;若匹配结果表征正在测试的脚本的脚本标签与目标待测试脚本的脚本标签匹配成功,则确定对目标待测试脚本的测试顺序进行调整,以使调整后的目标测试脚本的测试顺序滞后于正在测试的脚本。本申请实施例能避免相互关联的脚本进行并行测试,从而提高测试结果的准确性。

Description

一种脚本测试顺序的调整方法、装置及存储介质
技术领域
本申请实施例涉及测试技术领域,具体涉及一种脚本测试顺序的调整方法、装置及存储介质。
背景技术
目前脚本的自动化测试过程中,一般是直接对所有待测试脚本进行测试,因为同时针对多个待测试脚本进行测试,容易出现测试卡顿的情况,导致无法快速得到测试结果。另外,相互关联的脚本在并行测试过程中容易相互影响,导致测试结果的准确性较低。
发明内容
鉴于上述问题,本申请实施例提供了一种脚本测试顺序的调整方法、装置及存储介质,以使各个待测试脚本按照相应的测试顺序进行测试,同时避免了互相关联的脚本之间的互相影响。
根据本申请实施例的一个方面,提供了一种脚本测试顺序的调整方法,所述调整方法包括:根据各个待测试脚本的优先级,确定出当前第一测试顺序的目标待测试脚本;将获取到的正在测试的脚本的脚本标签与所述目标待测试脚本的脚本标签进行匹配操作,并根据得到的匹配结果确定是否对所述目标待测试脚本的测试顺序进行调整;其中,互相关联的脚本之间配置有相同的脚本标签;若所述匹配结果表征所述正在测试的脚本的脚本标签与所述目标待测试脚本的脚本标签匹配成功,则确定对所述目标待测试脚本的测试顺序进行调整,以使调整后的目标测试脚本的测试顺序滞后于正在测试的脚本。
在一种可选的方式中,在所述根据各个待测试脚本的优先级,确定出当前第一测试顺序的目标待测试脚本之前,所述调整方法还包括:根据预设优先级策略对不同类型的预设脚本进行优先级的划分操作,以得到多个不同预设优先级的预设脚本;其中,所述预设优先级策略中包括预设父优先级划分策略和预设子优先级划分策略;分别将各个待测试脚本与所述多个不同优先级的预设脚本进行匹配操作,并将匹配成功的预设脚本对应的预设优先级作为各个待测试脚本的优先级。
在一种可选的方式中,在所述根据各个待测试脚本的优先级,确定出当前第一测试顺序的目标待测试脚本之前,所述调整方法还包括:将隶属于同一父预设脚本的第一子预设脚本,和所述父预设脚本作为互相关联的预设脚本;对所述互相关联的预设脚本进行预设脚本标签配置操作,以使所述互相关联的预设脚本配置有相同的预设脚本标签,得到多个不同预设脚本标签的预设脚本;分别将各个待测试脚本与所述多个不同预设脚本标签的预设脚本进行匹配操作,并将匹配成功的预设脚本的预设脚本标签作为各个待测试脚本的脚本标签。
在一种可选的方式中,在所述根据各个待测试脚本的优先级,确定出当前第一测试顺序的目标待测试脚本之前,所述调整方法还包括:获取当前剩余测试资源量,当前可测试脚本数量和未测试脚本中各个脚本的优先级;根据当前剩余测试资源量,当前可测试脚本数量和所述未测试脚本中各个脚本的优先级,确定出多个待测试脚本;其中,所述多个待测试脚本所需的总测试资源量小于或等于当前剩余测试资源量,所述多个待测试脚本的总数量小于或等于当前可测试脚本数量。
在一种可选的方式中,所述确定对所述目标待测试脚本的测试顺序进行调整,以使调整后的目标测试脚本的测试顺序滞后于正在测试的脚本,进一步包括:将所述目标待测试脚本对应的测试顺序进行延后处理,以使得延后处理后的目标待测试脚本对应的测试顺序置于正在测试的脚本对应的测试顺序之后。
在一种可选的方式中,所述将获取到的正在测试的脚本的脚本标签与所述目标待测试脚本的脚本标签进行匹配操作,进一步包括:获取正在测试的脚本的至少一个脚本标签与所述目标待测试脚本的至少一个脚本标签;遍历正在测试的脚本的脚本标签,并将遍历到的脚本标签作为目标脚本标签;将所述目标脚本标签与所述目标待测试脚本的每个脚本标签进行匹配操作,得到所述目标脚本标签与所述目标待测试脚本的脚本标签的匹配结果,以得到正在测试的脚本的脚本标签与所述目标待测试脚本的脚本标签的匹配结果。
在一种可选的方式中,所述根据得到的匹配结果确定是否对所述目标待测试脚本的测试顺序进行调整,进一步包括:若所述匹配结果表征所述正在测试的脚本的脚本标签与所述目标待测试脚本的脚本标签匹配失败,则确定不对所述目标待测试脚本的测试顺序进行调整。
根据本申请实施例的另一方面,提供了一种脚本测试顺序的调整装置,所述调整装置包括:确定模块,用于根据各个待测试脚本的优先级,确定出当前第一测试顺序的目标待测试脚本;匹配模块,用于将获取到的正在测试的脚本的脚本标签与所述目标待测试脚本的脚本标签进行匹配操作,并根据得到的匹配结果确定是否对所述目标待测试脚本的测试顺序进行调整;其中,互相关联的脚本之间配置有相同的脚本标签;调整模块,用于若所述匹配结果表征所述正在测试的脚本的脚本标签与所述目标待测试脚本的脚本标签匹配成功,则确定对所述目标待测试脚本的测试顺序进行调整,以使调整后的目标测试脚本的测试顺序滞后于正在测试的脚本。
根据本申请实施例的一个方面,提供了一种电子设备,包括:控制器;存储器,用于存储一个或多个程序,当一个或多个程序被所述控制器执行时,以执行上述的调整方法。
根据本申请实施例的一个方面,还提供了一种计算机可读存储介质,其上存储有计算机可读指令,当所述计算机可读指令被计算机的处理器执行时,使计算机执行上述的调整方法。
根据本申请实施例的一个方面,还提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备执行上述的调整方法。
本申请实施例根据优先级对各个待测试脚本进行初步排序,避免同时测试多个待测试脚本,以确定出当前第一测试顺序的目标待测试脚本,并获取正在测试的脚本的脚本标签,若检测到目标待测试脚本的脚本标签与正在测试的脚本的脚本标签匹配成功,则对目标待测试脚本的测试顺序进行延后处理,避免其与正在测试的脚本同时进行测试,以避免相互关联的脚本进行并行测试,从而提高测试结果的准确性。
上述说明仅是本申请实施例技术方案的概述,为了能够更清楚了解本申请实施例的技术手段,而可依照说明书的内容予以实施,并且为了让本申请实施例的上述和其它目的、特征和优点能够更明显易懂,以下特举本申请的具体实施方式。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本申请的实施例,并与说明书一起用于解释本申请的原理。显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术者来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本申请一示例性实施例示出的一种脚本测试顺序的调整方法的流程示意图。
图2是本申请一示例性实施例示出的预设父优先级和预设子优先级的关系示意图。
图3是本申请一示例性实施例示出的互相关联的预设脚本的示意图。
图4是本申请一示例性实施例示出的待测试脚本的确定过程示意图。
图5是本申请一示例性实施例示出的待测试脚本的确定过程和测试过程的示意图。
图6是本申请一示例性实施例示出的脚本测试顺序的调整装置的结构示意图。
图7是本申请的一示例性实施例示出的电子设备的计算机系统的结构示意图。
具体实施方式
这里将详细地对示例性实施例执行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本申请相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本申请的一些方面相一致的装置和方法的例子。
附图中所示的方框图仅仅是功能实体,不一定必须与物理上独立的实体相对应。即,可以采用软件形式来实现这些功能实体,或在一个或多个硬件模块或集成电路中实现这些功能实体,或在不同网络和/或处理器装置和/或微控制器装置中实现这些功能实体。
附图中所示的流程图仅是示例性说明,不是必须包括所有的内容和操作/步骤,也不是必须按所描述的顺序执行。例如,有的操作/步骤还可以分解,而有的操作/步骤可以合并或部分合并,因此实际执行的顺序有可能根据实际情况改变。
在本申请中提及的“多个”是指两个或者两个以上。“和/或”描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。字符“/”一般表示前后关联对象是一种“或”的关系。
现有脚本的自动化测试过程中,一般是直接对所有待测试脚本进行测试,因为同时针对多个待测试脚本进行测试,容易出现测试卡顿的情况,导致无法快速得到测试结果。另外,相互关联的脚本在并行测试过程中容易相互影响,导致测试结果的准确性较低。
为此,本申请的一方面提供了一种脚本测试顺序的调整方法。具体请参阅图1,图1是本申请一示例性实施例示出的一种脚本测试顺序的调整方法的流程示意图。该调整方法至少包括S110至S130,详细介绍如下:
S110:根据各个待测试脚本的优先级,确定出当前第一测试顺序的目标待测试脚本。
待测试脚本是从未测试脚本中选取得到的脚本,其还需结合当前的测试环境和相关的预设条件才能准确确定得到。
待测试脚本的优先级与脚本的测试顺序呈正相关,即优先级越高的待测试脚本,其测试顺序越靠前。
目标待测试脚本为当前初始测试顺序排序第一的待测试脚本,例如,待测试脚本包括A脚本,B脚本和C脚本。A脚本的优先级为第一有限级,B脚本的优先级为第二有限级,C脚本的优先级为第三有限级。其中,因为A脚本的优先级别最高,所以A脚本的测试顺序为当前第一测试顺序。
S120:将获取到的正在测试的脚本的脚本标签与目标待测试脚本的脚本标签进行匹配操作,并根据得到的匹配结果确定是否对目标待测试脚本的测试顺序进行调整;其中,互相关联的脚本之间配置有相同的脚本标签。
本申请对每个脚本配置有至少一个脚本标签,每个脚本的脚本标签的数量并不一定相同。
本实施例中互相关联的脚本指的是测试过程中会影响测试结果的脚本,例如,测试脚本B的过程中,需用到脚本A的测试结果。若在测试脚本B的同时,对脚本A进行测试,则会直接将脚本A的测试结果运用于测试脚本B的过程中,以至于影响脚本B的独立测试过程,使得脚本B的测试结果不准确。
S130:若匹配结果表征正在测试的脚本的脚本标签与目标待测试脚本的脚本标签匹配成功,则确定对目标待测试脚本的测试顺序进行调整,以使调整后的目标测试脚本的测试顺序滞后于正在测试的脚本。
若正在测试的脚本的脚本标签与目标待测试脚本的脚本标签匹配成功,则表明它们是互相关联的脚本,为了避免相互关联的脚本同时测试时互相影响,此情况下对目标待测试脚本的测试顺序进行延后处理,避免其与正在测试的脚本同时进行测试,从而提高测试结果的准确性。
示例性地,若两个脚本之间的所有脚本标签皆匹配成功,则表征它们之间的脚本标签匹配成功;若它们之间有任一脚本标签匹配失败,则表征它们之间的脚本标签匹配失败。例如,正在测试的脚本的脚本标签包括标签1和标签2,目标待测试脚本的脚本标签包括标签2和标签4,因为它们之间存在未匹配成功的标签1和标签4,即表征正在测试的脚本的脚本标签与目标待测试脚本的脚本标签匹配失败。
另一示例性地,若两个脚本之间对应的某一个脚本标签匹配成功,则表征它们之间的脚本标签匹配成功,即无需它们之中的所有脚本标签皆匹配成功。例如,正在测试的脚本的脚本标签包括标签1,标签2和标签3,目标待测试脚本的脚本标签包括标签2和标签4,因为它们存在共同的标签2,即表征正在测试的脚本的脚本标签与目标待测试脚本的脚本标签匹配成功。
本实施例根据优先级对各个待测试脚本进行初步排序,避免同时测试多个待测试脚本,以确定出当前第一测试顺序的目标待测试脚本,并获取正在测试的脚本的脚本标签,若检测到目标待测试脚本的脚本标签与正在测试的脚本的脚本标签匹配成功,则对目标待测试脚本的测试顺序进行延后处理,避免其与正在测试的脚本同时进行测试,以避免相互关联的脚本进行并行测试,从而提高测试结果的准确性。
同时,本实施例可根据测试顺序依次输出每个待测试脚本的测试结果,使得测试结果更加清晰、有序,便于用户进行分析和比对。
在本申请另一示例性实施例中,详细介绍了如何得到各个待测试脚本的优先级,即在上述示例性实施例示出的调整方法中的S110之前,还包括S210至S220,详细介绍如下:
S210:根据预设优先级策略对不同类型的预设脚本进行优先级的划分操作,以得到多个不同预设优先级的预设脚本;其中,预设优先级策略中包括预设父优先级划分策略和预设子优先级划分策略。
示例性地,请参阅图2,图2是本申请一示例性实施例示出的预设父优先级和预设子优先级的关系示意图。其中,预设优先级划分策略中包括四个预设父优先级:第一预设父优先级对应的优先级别>第二预设父优先级对应的优先级别>第三预设父优先级对应的优先级别>第四预设父优先级对应的优先级别;每个预设父优先级包括四个预设子优先级:第一预设子优先级对应的优先级别>第二预设子优先级对应的优先级别>第三预设子优先级对应的优先级别>第四预设子优先级对应的优先级别。
根据预设父优先级和预设子优先级确定出脚本对应的预设优先级,如表1所示,表1为预设父优先级和预设子优先级对应预设优先级的关系表。
表1
S220:分别将各个待测试脚本与多个不同优先级的预设脚本进行匹配操作,并将匹配成功的预设脚本对应的预设优先级作为各个待测试脚本的优先级。
示例性地,根据表2中预设脚本对应的预设优先级确定出各个待测试脚本的优先级。将各个待测试脚本与预设脚本进行匹配,并将匹配成功的预设脚本对应的预设优先级作为待测试脚本的优先级。其中,表2为预设脚本与预设优先级的对应关系表。
第一预设脚本 第二预设脚本 第三预设脚本 ……
第一预设优先级 第二预设优先级 第三预设优先级 ……
表2
本实施例通过对不同预设脚本进行预设优先级的划分,以得到多个预设脚本对应的预设优先级。本实施例通过将各个待测试脚本与多个预设脚本进行匹配操作,并将匹配成功的预设脚本对应的预设优先级作为待测试脚本的优先级。因为前置过程中已将预设脚本和预设优先级进行了准确地划分,只需将待测试脚本与预设脚本进行简单的匹配操作,即能快速地确定出各个待测试脚本的优先级。
在本申请另一示例性实施例中,详细介绍了如何确定出各个待测试脚本的脚本标签,即在上述示例性实施例示出的调整方法中的S110之前,还包括S310至S330,详细介绍如下:
S310:将隶属于同一父预设脚本的第一子预设脚本,和父预设脚本作为互相关联的预设脚本。
示例性地,请参阅图3,图3是本申请一示例性实施例示出的互相关联的预设脚本的示意图。其中,A预设脚本分别为B预设脚本,C预设脚本和D预设脚本的父预设脚本,即他们之间互相关联。同理,B预设脚本与E预设脚本互为关联脚本;E预设脚本和G预设脚本互为关联脚本;C预设脚本与F预设脚本互为关联脚本。
S320:对互相关联的预设脚本进行预设脚本标签配置操作,以使互相关联的预设脚本配置有相同的预设脚本标签,得到多个不同预设脚本标签的预设脚本。
如图3所示,互相关联的预设脚本之间配置有相同的预设脚本标签。具体地,A预设脚本、B预设脚本,C预设脚本和D预设脚本之间皆配置有预设标签1;B预设脚本与E预设脚本之间配置有预设标签2;E预设脚本和G预设脚本之间配置有预设标签3;C预设脚本与F预设脚本之间配置有预设标签4。
S330:分别将各个待测试脚本与多个不同预设脚本标签的预设脚本进行匹配操作,并将匹配成功的预设脚本的预设脚本标签作为各个待测试脚本的脚本标签。
示例性地,根据表3中预设脚本对应的预设脚本标签确定出各个待测试脚本的脚本标签。将各个待测试脚本与预设脚本进行匹配,并将匹配成功的预设脚本对应的预设脚本标签作为待测试脚本的脚本标签。其中,表3为预设脚本与预设脚本标签的对应关系表。
第一预设脚本 第二预设脚本 第三预设脚本 ……
预设脚本标签编号 1 1、2 2、3、4 ……
表3
本实施例通过对互相关联的预设脚本配置相同的脚本标签,以得到多个不同预设脚本标签的预设脚本。本实施例通过将各个待测试脚本与多个预设脚本进行匹配操作,并将匹配成功的预设脚本对应的预设脚本标签作为待测试脚本的脚本标签。因为前置过程中已将预设脚本和预设脚本标签进行了准确地划分,只需将待测试脚本与预设脚本进行简单的匹配操作,即能快速地确定出各个待测试脚本的脚本标签。
在本申请另一示例性实施例中,详细介绍了如何从未测试脚本中确定出待测试脚本,即在上述示例性实施例示出的调整方法中的S110之前,还包括S410至S420,详细介绍如下:
S410:获取当前剩余测试资源量,当前可测试脚本数量和未测试脚本中各个脚本的优先级。
示例性地,总的测试资源量量为100个单位,当前正利用的测试资源量为20,则当前剩余测试资源量为80,即当前可利用资源量的上限值为80,若超过该上限值,测试过程将会出现卡顿、停滞等情况。同理,测试过程可同时进行测试的脚本数量为3个,若同时对超过3个数量以上的脚本同时进行测试,则测试过程会出现卡顿、停滞等情况。
S420:根据当前剩余测试资源量,当前可测试脚本数量和未测试脚本中各个脚本的优先级,确定出多个待测试脚本;其中,多个待测试脚本所需的总测试资源量小于或等于当前剩余测试资源量,多个待测试脚本的总数量小于或等于当前可测试脚本数量。
本实施例中的待测试脚本是从未测试脚本中选取得到的,例如总脚本数量为100个,已测试的脚本数量为10个,未测试的脚本数量即为90;本实施例根据90个未测试脚本各自的优先级,选取优先级高的未测试脚本为待测试脚本,选取过程中还需结合当前剩余测试资源量和当前可测试脚本数量,以使得待测试脚本所需的总测试资源量小于或等于当前剩余测试资源量,待测试脚本的总数量小于或等于当前可测试脚本数量。
下面结合图4对本实施例进行示例性说明,图4是本申请一示例性实施例示出的待测试脚本的确定过程示意图。
根据获取到的当前剩余测试资源量,当前可测试脚本数量和未测试脚本中各个脚本的优先级,确定出初始待测试脚本合集;其中,初始待测试脚本合集中包括至少一个初始待测试脚本。
检测初始待测试脚本集合中初始待测试脚本的总数量是否小于或等于当前可测试脚本数量,以及检测初始待测试脚本集合所需的总测试资源量是否小于或等于当前剩余测试资源量。两个检测步骤可同时进行,亦可按照图4所示顺序分别进行,本实施例并不对其它们之间的检测顺序作限制。
若检测到初始待测试脚本集合中初始待测试脚本的总数量小于或等于当前可测试脚本数量,并且初始待测试脚本集合所需的总测试资源量小于或等于当前剩余测试资源量,则确定将初始待测试脚本集合中的初始待测试脚本作为待测试脚本。
本实施例提供了一种从未测试脚本中确定出待测试脚本的方式,根据当前剩余测试资源量,当前可测试脚本数量和未测试脚本中各个脚本的优先级,确定出总测试资源量小于或等于当前剩余测试资源量,并且脚本总数量小于或等于当前可测试脚本数量的待测试脚本,以避免测试过程中出现卡顿或停滞的情况,保证了测试效率。
在本申请另一示例性实施例中,详细介绍了如何确定对目标待测试脚本的测试顺序进行调整,以使调整后的目标测试脚本的测试顺序滞后于正在测试的脚本,在上述任一示例性实施例中S130进一步包括:将目标待测试脚本对应的测试顺序进行延后处理,以使得延后处理后的目标待测试脚本对应的测试顺序置于正在测试的脚本对应的测试顺序之后。
示例性地,延后处理为暂停测试目标待测试脚本,待正在测试的脚本测试完成后再对目标待测试脚本进行测试。另一示例性地,延后处理为将目标待测试脚本的测试顺序延后至第二测试顺序或第三测试顺序等,使得延后处理后的目标待测试脚本对应的测试顺序置于正在测试的脚本对应的测试顺序之后。
本实施例进一步说明了对目标待测试脚本进行延后处理的方式,即将目标待测试脚本对应的测试顺序进行延后处理,避免其与正在测试的脚本同时进行测试,以避免相互关联的脚本进行并行测试,从而提高测试结果的准确性。
在本申请另一示例性实施例中,详细介绍了如何将获取到的正在测试的脚本的脚本标签与目标待测试脚本的脚本标签进行匹配操作,在上述任一示例性实施例中S120进一步包括S1201至S1203,详细介绍如下:
S1201:获取正在测试的脚本的至少一个脚本标签与目标待测试脚本的至少一个脚本标签。
每个脚本至少包括一个脚本标签,并且每个脚本之间的脚本标签数量可能不同,如图3所示,A预设脚本的脚本标签数量为1个;B预设脚本的脚本标签数量为2个,C预设脚本的脚本标签数量为2个。
S1202:遍历正在测试的脚本的脚本标签,并将遍历到的脚本标签作为目标脚本标签。
本实施例通过对正在测试的脚本的脚本标签进行遍历,以无遗漏地将其所有脚本标签与目标待测试脚本的每个脚本标签进行匹配操作。
S1203:将目标脚本标签与目标待测试脚本的每个脚本标签进行匹配操作,得到目标脚本标签与目标待测试脚本的脚本标签的匹配结果,以得到正在测试的脚本的脚本标签与目标待测试脚本的脚本标签的匹配结果。
对本实施例进行示例性说明:正在测试的脚本的脚本标签包括第一脚本标签,第二脚本标签和第三脚本标签;目标待测试脚本的脚本标签包括目标第一脚本标签和目标第二脚本标签。
遍历正在测试的脚本的脚本标签,若遍历到其第二脚本标签,则将第二脚本标签与目标待测试脚本中的每个脚本标签逐一进行匹配操作,即将第二脚本标签分别与目标第一脚本标签和目标第二脚本标签进行匹配操作,得到两个匹配结果(即本实施例中目标脚本标签与目标待测试脚本的脚本标签的匹配结果),依次类推,确定出多个匹配结果,从而确定出正在测试的脚本的脚本标签与目标待测试脚本的脚本标签的匹配结果。例如,若正在测试的脚本的任一脚本标签与目标待测试脚本中的任一脚本标签匹配成功,则得到表征正在测试的脚本的脚本标签与目标待测试脚本的脚本标签匹配成功的匹配结果。
本实施例提供一种确定正在测试的脚本的脚本标签与目标待测试脚本的脚本标签的匹配结果的方式,通过遍历正在测试的脚本的脚本标签,并将遍历到的脚本标签作为目标脚本标签,分别与目标待测试脚本的每个脚本标签进行匹配操作,以保证无遗漏地将正在测试的脚本中的所有脚本标签,与目标待测试脚本的每个脚本标签进行匹配操作,以得到多个匹配结果,从而准确得到正在测试的脚本的脚本标签与目标待测试脚本的脚本标签的匹配结果。
在本申请另一示例性实施例中,详细介绍了如何根据得到的匹配结果确定是否对目标待测试脚本的测试顺序进行调整,在上述任一示例性实施例中S120进一步包括S1204,详细介绍如下:
S1204:若匹配结果表征正在测试的脚本的脚本标签与目标待测试脚本的脚本标签匹配失败,则确定不对目标待测试脚本的测试顺序进行调整。
若正在测试的脚本中的所有脚本标签,皆与目标待测试脚本中的所有脚本标签匹配失败,则表征正在测试的脚本的脚本标签与目标待测试脚本的脚本标签匹配失败,即表征正在测试的脚本与目标待测试脚本是不互相关联的脚本,同时对两个脚本进行测试,并不会影响它们各自的测试结果。
本实施例进一步说明了无需调整目标待测试脚本的测试顺序的情况,即匹配结果表征正在测试的脚本的脚本标签与目标待测试脚本的脚本标签匹配失败,则表征正在测试的脚本与目标待测试脚本是不互相关联的脚本,两个脚本并行测试并不会影响它们各自的测试结果,所以无需调整目标待测试脚本的测试顺序。
在本申请另一示例性实施例中,就待测试脚本的确定过程和测试过程进行了示例性说明,具体请参阅图5,图5是本申请一示例性实施例示出的待测试脚本的确定过程和测试过程的示意图。具体介绍如下:
测试人员将所有未测试脚本进行上传,并对它们进行优先级和脚本标签的配置,以确定出每个未测试脚本的优先级和脚本标签;根据获取到的当前剩余测试资源量,当前可测试脚本数量和未测试脚本中各个脚本的优先级,确定出初始待测试脚本合集;其中,初始待测试脚本合集中包括至少一个初始待测试脚本。
检测初始待测试脚本集合中初始待测试脚本的总数量是否小于或等于当前可测试脚本数量,以及检测初始待测试脚本集合所需的总测试资源量是否小于或等于当前剩余测试资源量。
若检测到初始待测试脚本集合中初始待测试脚本的总数量小于或等于当前可测试脚本数量,并且初始待测试脚本集合所需的总测试资源量小于或等于当前剩余测试资源量,则确定将初始待测试脚本集合中的初始待测试脚本作为待测试脚本。
从待测试脚本中确定出当前第一测试顺序的目标待测试脚本,并检测正在测试的脚本的脚本标签与目标待测试脚本的脚本标签是否匹配成功(即脚本关联性检测)。
若匹配成功,则确定对目标待测试脚本的测试顺序进行调整,以使调整后的目标测试脚本的测试顺序滞后于正在测试的脚本。
若匹配失败,则检测是否接收到人为中断指令,若检测未接收到人为中断指令,则对目标待测试脚本进行测试;若检测接收到人为中断指令,则中断测试目标测试脚本。本实施例还可以通过人为指令控制脚本测试过程的中断与否,以避免资源浪费和测试冲突。
本申请的另一方面还提供了一种脚本测试顺序的调整装置,如图6所示,图6是本申请一示例性实施例示出的脚本测试顺序的调整装置的结构示意图。调整装置600包括:
确定模块610,用于根据各个待测试脚本的优先级,确定出当前第一测试顺序的目标待测试脚本。
匹配模块630,用于将获取到的正在测试的脚本的脚本标签与目标待测试脚本的脚本标签进行匹配操作,并根据得到的匹配结果确定是否对目标待测试脚本的测试顺序进行调整;其中,互相关联的脚本之间配置有相同的脚本标签。
调整模块650,用于若匹配结果表征正在测试的脚本的脚本标签与目标待测试脚本的脚本标签匹配成功,则确定对目标待测试脚本的测试顺序进行调整,以使调整后的目标测试脚本的测试顺序滞后于正在测试的脚本。
在一种可选的方式中,调整装置600还包括:
优先级划分模块,用于根据预设优先级策略对不同类型的预设脚本进行优先级的划分操作,以得到多个不同预设优先级的预设脚本;其中,预设优先级策略中包括预设父优先级划分策略和预设子优先级划分策略。
优先级确定模块,用于分别将各个待测试脚本与多个不同优先级的预设脚本进行匹配操作,并将匹配成功的预设脚本对应的预设优先级作为各个待测试脚本的优先级。
在一种可选的方式中,调整装置600还包括:
脚本关联划分模块,用于将隶属于同一父预设脚本的第一子预设脚本,和父预设脚本作为互相关联的预设脚本。
预设脚本标签配置模块,用于对互相关联的预设脚本进行预设脚本标签配置操作,以使互相关联的预设脚本配置有相同的预设脚本标签,得到多个不同预设脚本标签的预设脚本。
脚本标签确定模块,用于分别将各个待测试脚本与多个不同预设脚本标签的预设脚本进行匹配操作,并将匹配成功的预设脚本的预设脚本标签作为各个待测试脚本的脚本标签。
在一种可选的方式中,调整装置600还包括:
获取模块,用于获取当前剩余测试资源量,当前可测试脚本数量和未测试脚本中各个脚本的优先级。
待测试脚本确定模块,用于根据当前剩余测试资源量,当前可测试脚本数量和未测试脚本中各个脚本的优先级,确定出多个待测试脚本;其中,多个待测试脚本所需的总测试资源量小于或等于当前剩余测试资源量,多个待测试脚本的总数量小于或等于当前可测试脚本数量。
在一种可选的方式中,调整模块650进一步包括:
延后处理单元,用于将目标待测试脚本对应的测试顺序进行延后处理,以使得延后处理后的目标待测试脚本对应的测试顺序置于正在测试的脚本对应的测试顺序之后。
在一种可选的方式中,匹配模块630进一步包括:
获取单元,用于获取正在测试的脚本的至少一个脚本标签与目标待测试脚本的至少一个脚本标签。
遍历单元,用于遍历正在测试的脚本的脚本标签,并将遍历到的脚本标签作为目标脚本标签。
匹配单元,用于将目标脚本标签与目标待测试脚本的每个脚本标签进行匹配操作,得到目标脚本标签与目标待测试脚本的脚本标签的匹配结果,以得到正在测试的脚本的脚本标签与目标待测试脚本的脚本标签的匹配结果。
在一种可选的方式中,匹配模块630进一步包括:
匹配失败单元,用于若匹配结果表征正在测试的脚本的脚本标签与目标待测试脚本的脚本标签匹配失败,则确定不对目标待测试脚本的测试顺序进行调整。
本申请调整装置根据优先级对各个待测试脚本进行初步排序,避免同时测试多个待测试脚本,以确定出当前第一测试顺序的目标待测试脚本,并获取正在测试的脚本的脚本标签,若检测到目标待测试脚本的脚本标签与正在测试的脚本的脚本标签匹配成功,则对目标待测试脚本的测试顺序进行延后处理,避免其与正在测试的脚本同时进行测试,以避免相互关联的脚本进行并行测试,从而提高测试结果的准确性。
需要说明的是,上述实施例所提供的调整装置与前述实施例所提供的调整方法属于同一构思,其中各个模块和单元执行操作的具体方式已经在方法实施例中进行了详细描述,这里不再赘述。
本申请的另一方面还提供了一种电子设备,包括:控制器;存储器,用于存储一个或多个程序,当一个或多个程序被控制器执行时,以执行上述的调整方法。
请参阅图7,图7是本申请的一示例性实施例示出的电子设备的计算机系统的结构示意图,其示出了适于用来实现本申请实施例的电子设备的计算机系统的结构示意图。
需要说明的是,图7示出的电子设备的计算机系统700仅是一个示例,不应对本申请实施例的功能和使用范围带来任何限制。
如图7所示,计算机系统700包括中央处理单元(Central Processing Unit,CPU)701,其可以根据存储在只读存储器(Read-Only Memory,ROM)702中的程序或者从存储部分708加载到随机访问存储器(Random Access Memory,RAM)703中的程序而执行各种适当的动作和处理,例如执行上述实施例中的方法。在RAM 703中,还存储有系统操作所需的各种程序和数据。CPU 701、ROM 702以及RAM 703通过总线704彼此相连。输入/输出(Input/Output,I/O)接口705也连接至总线704。
以下部件连接至I/O接口705:包括键盘、鼠标等的输入部分706;包括诸如阴极射线管(Cathode Ray Tube,CRT)、液晶显示器(Liquid Crystal Display,LCD)等以及扬声器等的输出部分707;包括硬盘等的存储部分708;以及包括诸如LAN(Local Area Network,局域网)卡、调制解调器等的网络接口卡的通信部分709。通信部分709经由诸如因特网的网络执行通信处理。驱动器710也根据需要连接至I/O接口705。可拆卸介质711,诸如磁盘、光盘、磁光盘、半导体存储器等等,根据需要安装在驱动器710上,以便于从其上读出的计算机程序根据需要被安装入存储部分708。
特别地,根据本申请的实施例,上文参考流程图描述的过程可以被实现为计算机软件程序。例如,本申请的实施例包括一种计算机程序产品,其包括承载在计算机可读介质上的计算机程序,该计算机程序包含用于执行流程图所示的方法的计算机程序。在这样的实施例中,该计算机程序可以通过通信部分709从网络上被下载和安装,和/或从可拆卸介质711被安装。在该计算机程序被中央处理单元(CPU)701执行时,执行本申请的系统中限定的各种功能。
需要说明的是,本申请实施例所示的计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质或者是上述两者的任意组合。计算机可读存储介质例如可以是电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子可以包括但不限于:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机访问存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(Erasable Programmable Read Only Memory,EPROM)、闪存、光纤、便携式紧凑磁盘只读存储器(Compact Disc Read-Only Memory,CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本申请中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。而在本申请中,计算机可读的信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的计算机程序。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读的信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。计算机可读介质上包含的计算机程序可以用任何适当的介质传输,包括但不限于:无线、有线等等,或者上述的任意合适的组合。
附图中的流程图和框图,图示了按照本申请各种实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。其中,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,上述模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不相同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图或流程图中的每个方框、以及框图或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
描述于本申请实施例中所涉及到的单元可以通过软件的方式实现,也可以通过硬件的方式来实现,所描述的单元也可以设置在处理器中。其中,这些单元的名称在某种情况下并不构成对该单元本身的限定。
本申请的另一方面还提供了一种计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现如前的调整方法。该计算机可读存储介质可以是上述实施例中描述的电子设备中所包含的,也可以是单独存在,而未装配入该电子设备中。
本申请的另一方面还提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备执行上述各个实施例中提供的调整方法。
根据本申请实施例的一个方面,还提供了一种计算机系统,包括中央处理单元(Central Processing Unit,CPU),其可以根据存储在只读存储器(Read-Only Memory,ROM)中的程序或者从存储部分加载到随机访问存储器(Random Access Memory,RAM)中的程序而执行各种适当的动作和处理,例如执行上述实施例中的方法。在RAM中,还存储有系统操作所需的各种程序和数据。CPU、ROM以及RAM通过总线彼此相连。输入/输出(Input/Output,I/O)接口也连接至总线。
以下部件连接至I/O接口:包括键盘、鼠标等的输入部分;包括诸如阴极射线管(Cathode Ray Tube,CRT)、液晶显示器(Liquid Crystal Display,LCD)等以及扬声器等的输出部分;包括硬盘等的存储部分;以及包括诸如LAN(Local Area Network,局域网)卡、调制解调器等的网络接口卡的通信部分。通信部分经由诸如因特网的网络执行通信处理。驱动器也根据需要连接至I/O接口。可拆卸介质,诸如磁盘、光盘、磁光盘、半导体存储器等等,根据需要安装在驱动器上,以便于从其上读出的计算机程序根据需要被安装入存储部分。
上述内容,仅为本申请的较佳示例性实施例,并非用于限制本申请的实施方案,本领域普通技术人员根据本申请的主要构思和精神,可以十分方便地进行相应的变通或修改,故本申请的保护范围应以权利要求书所要求的保护范围为准。

Claims (10)

1.一种脚本测试顺序的调整方法,其特征在于,所述调整方法包括:
根据各个待测试脚本的优先级,确定出当前第一测试顺序的目标待测试脚本;
将获取到的正在测试的脚本的脚本标签与所述目标待测试脚本的脚本标签进行匹配操作,并根据得到的匹配结果确定是否对所述目标待测试脚本的测试顺序进行调整;其中,互相关联的脚本之间配置有相同的脚本标签;
若所述匹配结果表征所述正在测试的脚本的脚本标签与所述目标待测试脚本的脚本标签匹配成功,则确定对所述目标待测试脚本的测试顺序进行调整,以使调整后的目标测试脚本的测试顺序滞后于正在测试的脚本。
2.根据权利要求1所述的调整方法,其特征在于,在所述根据各个待测试脚本的优先级,确定出当前第一测试顺序的目标待测试脚本之前,所述调整方法还包括:
根据预设优先级策略对不同类型的预设脚本进行优先级的划分操作,以得到多个不同预设优先级的预设脚本;其中,所述预设优先级策略中包括预设父优先级划分策略和预设子优先级划分策略;
分别将各个待测试脚本与所述多个不同优先级的预设脚本进行匹配操作,并将匹配成功的预设脚本对应的预设优先级作为各个待测试脚本的优先级。
3.根据权利要求1所述的调整方法,其特征在于,在所述根据各个待测试脚本的优先级,确定出当前第一测试顺序的目标待测试脚本之前,所述调整方法还包括:
将隶属于同一父预设脚本的第一子预设脚本,和所述父预设脚本作为互相关联的预设脚本;
对所述互相关联的预设脚本进行预设脚本标签配置操作,以使所述互相关联的预设脚本配置有相同的预设脚本标签,得到多个不同预设脚本标签的预设脚本;
分别将各个待测试脚本与所述多个不同预设脚本标签的预设脚本进行匹配操作,并将匹配成功的预设脚本的预设脚本标签作为各个待测试脚本的脚本标签。
4.根据权利要求1所述的调整方法,其特征在于,在所述根据各个待测试脚本的优先级,确定出当前第一测试顺序的目标待测试脚本之前,所述调整方法还包括:
获取当前剩余测试资源量,当前可测试脚本数量和未测试脚本中各个脚本的优先级;
根据当前剩余测试资源量,当前可测试脚本数量和所述未测试脚本中各个脚本的优先级,确定出多个待测试脚本;其中,所述多个待测试脚本所需的总测试资源量小于或等于当前剩余测试资源量,所述多个待测试脚本的总数量小于或等于当前可测试脚本数量。
5.根据权利要求1所述的调整方法,其特征在于,所述确定对所述目标待测试脚本的测试顺序进行调整,以使调整后的目标测试脚本的测试顺序滞后于正在测试的脚本,进一步包括:
将所述目标待测试脚本对应的测试顺序进行延后处理,以使得延后处理后的目标待测试脚本对应的测试顺序置于正在测试的脚本对应的测试顺序之后。
6.根据权利要求1至5中任一项所述的调整方法,其特征在于,所述将获取到的正在测试的脚本的脚本标签与所述目标待测试脚本的脚本标签进行匹配操作,进一步包括:
获取正在测试的脚本的至少一个脚本标签与所述目标待测试脚本的至少一个脚本标签;
遍历正在测试的脚本的脚本标签,并将遍历到的脚本标签作为目标脚本标签;
将所述目标脚本标签与所述目标待测试脚本的每个脚本标签进行匹配操作,得到所述目标脚本标签与所述目标待测试脚本的脚本标签的匹配结果,以得到正在测试的脚本的脚本标签与所述目标待测试脚本的脚本标签的匹配结果。
7.根据权利要求1至5中任一项所述的调整方法,其特征在于,所述根据得到的匹配结果确定是否对所述目标待测试脚本的测试顺序进行调整,进一步包括:
若所述匹配结果表征所述正在测试的脚本的脚本标签与所述目标待测试脚本的脚本标签匹配失败,则确定不对所述目标待测试脚本的测试顺序进行调整。
8.一种脚本测试顺序的调整装置,其特征在于,所述调整装置包括:
确定模块,用于根据各个待测试脚本的优先级,确定出当前第一测试顺序的目标待测试脚本;
匹配模块,用于将获取到的正在测试的脚本的脚本标签与所述目标待测试脚本的脚本标签进行匹配操作,并根据得到的匹配结果确定是否对所述目标待测试脚本的测试顺序进行调整;其中,互相关联的脚本之间配置有相同的脚本标签;
调整模块,用于若所述匹配结果表征所述正在测试的脚本的脚本标签与所述目标待测试脚本的脚本标签匹配成功,则确定对所述目标待测试脚本的测试顺序进行调整,以使调整后的目标测试脚本的测试顺序滞后于正在测试的脚本。
9.一种电子设备,其特征在于,包括:
控制器;
存储器,用于存储一个或多个程序,当一个或多个程序被控制器执行时,使得控制器实现权利要求1至7中任一项所述的调整方法。
10.一种计算机可读存储介质,其特征在于,其上存储有计算机可读指令,当计算机可读指令被计算机的处理器执行时,使计算机执行权利要求1至7中任一项所述的调整方法。
CN202311423148.1A 2023-10-30 2023-10-30 一种脚本测试顺序的调整方法、装置及存储介质 Pending CN117453552A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202311423148.1A CN117453552A (zh) 2023-10-30 2023-10-30 一种脚本测试顺序的调整方法、装置及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202311423148.1A CN117453552A (zh) 2023-10-30 2023-10-30 一种脚本测试顺序的调整方法、装置及存储介质

Publications (1)

Publication Number Publication Date
CN117453552A true CN117453552A (zh) 2024-01-26

Family

ID=89584970

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202311423148.1A Pending CN117453552A (zh) 2023-10-30 2023-10-30 一种脚本测试顺序的调整方法、装置及存储介质

Country Status (1)

Country Link
CN (1) CN117453552A (zh)

Similar Documents

Publication Publication Date Title
US10699036B2 (en) Method and system for testing vehicle
CN106294120B (zh) 测试代码的方法、设备和计算机程序产品
US9465724B2 (en) Method, program, and system for generating test cases
CN105446874B (zh) 一种资源配置文件的检测方法和装置
CN110674047B (zh) 软件测试方法、装置及电子设备
CN108399151B (zh) 数据比对系统和方法
CN111198811A (zh) 一种页面自动化测试的方法、装置、电子设备及存储介质
CN112148594A (zh) 一种脚本测试方法、装置、电子设备及存储介质
CN105468507B (zh) 分支达标检测方法及装置
CN110728306A (zh) 反向代理评价模型中目标参数选取方法及相关装置
CN110635961B (zh) 服务器的压测方法、装置和系统
CN112333246B (zh) 一种ABtest实验方法、装置、智能终端及存储介质
CN117453552A (zh) 一种脚本测试顺序的调整方法、装置及存储介质
CN111651350A (zh) 测试用例处理方法、装置、设备及计算机可读存储介质
CN111061258B (zh) 一种基于列车控制系统的功能测试方法及装置
CN110866492B (zh) 一种基线分支的识别方法、装置及计算机系统
CN115203178A (zh) 数据质检方法、装置、电子设备及存储介质
CN110442370B (zh) 一种测试用例查询方法及装置
CN117453551A (zh) 一种脚本性能的测试方法、装置及存储介质
CN113626301A (zh) 生成测试脚本的方法和装置
CN110688295A (zh) 数据测试方法和装置
CN117192343B (zh) 基于辅助系统的芯片测试方法、电子设备及介质
CN112559321A (zh) 准入测试用例确定方法、系统、电子设备和存储介质
CN106815035B (zh) 检查计算机系统的方法
CN110716830B (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