CN114812695B - 一种产品测试方法、装置、计算机设备和存储介质 - Google Patents
一种产品测试方法、装置、计算机设备和存储介质 Download PDFInfo
- Publication number
- CN114812695B CN114812695B CN202210735750.8A CN202210735750A CN114812695B CN 114812695 B CN114812695 B CN 114812695B CN 202210735750 A CN202210735750 A CN 202210735750A CN 114812695 B CN114812695 B CN 114812695B
- Authority
- CN
- China
- Prior art keywords
- test
- node
- item
- control condition
- target
- 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.)
- Active
Links
- 238000012360 testing method Methods 0.000 title claims abstract description 1420
- 238000003860 storage Methods 0.000 title claims abstract description 19
- 238000013515 script Methods 0.000 claims abstract description 109
- 238000000034 method Methods 0.000 claims abstract description 28
- 238000004590 computer program Methods 0.000 claims description 20
- 238000012545 processing Methods 0.000 claims description 14
- 230000006870 function Effects 0.000 description 9
- 238000010586 diagram Methods 0.000 description 7
- 238000011161 development Methods 0.000 description 6
- 230000007613 environmental effect Effects 0.000 description 4
- 238000012795 verification Methods 0.000 description 3
- 238000004458 analytical method Methods 0.000 description 2
- 238000007405 data analysis Methods 0.000 description 2
- 238000013461 design Methods 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 238000012216 screening Methods 0.000 description 2
- 230000001960 triggered effect Effects 0.000 description 2
- 238000003491 array Methods 0.000 description 1
- 238000013473 artificial intelligence Methods 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 238000007418 data mining Methods 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000004904 shortening Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01D—MEASURING NOT SPECIALLY ADAPTED FOR A SPECIFIC VARIABLE; ARRANGEMENTS FOR MEASURING TWO OR MORE VARIABLES NOT COVERED IN A SINGLE OTHER SUBCLASS; TARIFF METERING APPARATUS; MEASURING OR TESTING NOT OTHERWISE PROVIDED FOR
- G01D21/00—Measuring or testing not otherwise provided for
- G01D21/02—Measuring two or more variables by means not covered by a single other subclass
Landscapes
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Debugging And Monitoring (AREA)
Abstract
本申请实施例提供了一种产品测试方法、装置、计算机设备和存储介质,其中方法包括:接收针对待测试产品的测试请求,并基于所述测试请求确定所述待测试产品对应的测试控制条件和测试项;基于所述测试控制条件和所述测试项生成目标测试树,并基于所述目标测试树确定测试顺序;基于所述测试顺序,运行所述测试控制条件的测试脚本以及运行所述测试项的测试脚本对所述待测试产品进行测试,得到所述待测试产品的目标测试数据,可以提高对产品的测试效率。
Description
技术领域
本申请涉及自动化测试技术领域,尤其涉及一种产品测试方法、装置、计算机设备和存储介质。
背景技术
在产品设计开发过程中,为验证产品在不同温度,电压,工艺条件下的功能和性能,以确保产品的功能和性能满足设计规格和客户需求,需要进行大量的验证和测试。同时随着技术的快速发展和市场竞争的加剧,缩短产品上市时间越来越重要。如何完成测试对产品的上市时间和开发周期有越来越大的影响。
目前,对产品进行测试主要全手动测试,需要手动控制产品的测试状态,操作测试设备并处理测试数据,由于测试项及测试条件众多,在不同测试条件下需要人工针对这些测试条件重新开发测试项对应的自动测试脚本,且需要人工在一个测试项完成后触发另一个测试项,存在测试效率低的问题。
发明内容
本申请实施例提供了一种产品测试方法、装置、计算机设备和存储介质,可以提高产品的测试效率。
一方面,本申请实施例提供了一种产品测试方法,该方法包括:
接收针对待测试产品的测试请求,并基于所述测试请求确定所述待测试产品对应的测试控制条件和测试项;
基于所述测试控制条件和所述测试项生成目标测试树,并基于所述目标测试树确定测试顺序;
基于所述测试顺序,运行所述测试控制条件的测试脚本以及运行所述测试项的测试脚本对所述待测试产品进行测试,得到所述待测试产品的目标测试数据。
一方面,本申请实施例提供了一种产品测试装置,该装置包括:
接收单元,用于接收针对待测试产品的测试请求;
处理单元,用于基于所述测试请求确定所述待测试产品对应的测试控制条件和测试项;
所述处理单元,还用于基于所述测试控制条件和所述测试项生成目标测试树,并基于所述目标测试树确定测试顺序;
所述处理单元,还用于基于所述测试顺序,运行所述测试控制条件的测试脚本以及运行所述测试项的测试脚本对所述待测试产品进行测试,得到所述待测试产品的目标测试数据。
一方面,申请实施例提供一种计算机设备,该计算机设备包括输入设备、输出设备、处理器和计算机存储介质,该处理器和计算机存储介质相互连接,其中,计算机存储介质用于存储计算机程序,该处理器被配置用于调用计算机程序,执行上述产品测试方法。
一方面,本申请实施例提供了一种计算机可读存储介质,该计算机可读存储介质中存储有计算机程序,该计算机程序被处理器执行时,用于实现上述产品测试方法。
一方面,本申请实施例提供了一种计算机程序产品,计算机程序产品包括计算机程序;该计算机程序存储在计算机可读存储介质中,计算机程序被数据挖掘设备的处理器执行时,执行上述产品测试方法。
在本申请实施例中,一方面,可以基于待测试产品对应的测试控制条件和测试项生成目标测试树,基于目标测试树确定的测试顺序可以自动运行测试控制条件的测试脚本以及运行测试项的测试脚本对待测试产品进行测试,提高了测试效率;另一方面,测试控制条件与测试项不存在于同一测试脚本中,即测试控制条件与测试项进行解耦,测试控制条件与测试项各自对应相应脚本,可以避免人工在不同测试控制条件时重新开发测试项对应的测试脚本,这样可以进一步提高了对产品的测试效率。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本申请实施例提供的一种产品测试方法的流程示意图;
图2是本申请实施例提供的一种目标测试树的示意图;
图3a是本申请实施例提供的一种生成目标测试树的示意图;
图3b是本申请实施例提供的另一种生成目标测试树的示意图;
图4是本申请实施例提供的另一种测试树的示意图;
图5a是本申请实施例提供的一种在测试控制条件下运行测试项的测试脚本的流程示意图;
图5b是本申请实施例提供的一种运行测试项的测试脚本的流程示意图;
图6是本申请实施例提供的一种产品测试方法的流程示意图;
图7是本申请实施例提供的一种产品测试装置的结构示意图;
图8是本申请实施例提供的一种计算机设备的结构示意图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
为了更好的测试某个产品的功能、性能等等,本申请实施例提供了一种产品测试方案,该产品测试方案的大致原理如下:可将测试项和测试控制条件进行解耦,测试项可以专注于产品的测试内容,将原有测试项中所用到的测试控制条件独立出来。同时可将测试项和测试项进行解耦,即每个测试项、每个测试控制条件均可以看成独立的模块,这样在运行某个测试项或者某个测试控制条件时,可以不影响或者关注其他的测试项或测试控制条件。其中,将测试项与测试控制条件解耦,可以简化测试项开发,提高各测试项的可复用性,降低测试开发成本。在实际应用过程,当需要测试某个产品时,测试人员(或开发人员)可以触发对该产品(后续称为待测试产品)的测试,相应的,测试平台可以接收到针对待测试产品的测试请求,并基于该测试请求确定用于测试该待测试产品的多个测试项,或者,基于该测试请求确定用于测试该待测试产品的测试项和测试控制条件;其中,测试控制条件是指为了完成某个测试项所需要的测试环境、与待测试产品相关的关联条件、以及对待测试产品进行测试的测试流程或测试逻辑控制等等;环境条件可以是待测试产品的电压、温度等;与待测试产品相关的关联条件可以是:用于测试待测试产品的测试设备、待测试产品的产品状态等等。
在一个实施例中,基于测试请求确定了待测试产品对应的多个测试项,可以基于多个测试项生成目标测试树,然后可以基于目标测试树确定测试顺序,该测试顺序规定了每个测试项的测试脚本的运行顺序,并基于测试顺序,运行每个测试项的测试脚本对待测试产品进行测试,得到待测试产品的目标测试数据。
在另一种实施例中,基于测试请求确定了待测试产品对应的测试项和测试控制条件,可以基于测试项和测试控制条件生成目标测试树,该目标测试树可以用于测试待测试产品,测试项的数量可以为一个或多个,测试控制条件的数量可以为一个或多个。然后根据目标测试树确定测试顺序,该测试顺序规定了每个测试项的测试脚本以及每个测试控制条件的测试脚本的运行顺序。基于该测试顺序,运行测试项的测试脚本以及运行测试控制条件的测试脚本对待测试产品进行测试,得到待测试产品的目标测试数据,上述目标测试数据可以包括:运行每个测试项的测试脚本所得到的测试数据,在一些实施例中,该目标测试数据还可以包括测试控制条件。
本申请实施例所提供的产品测试方案有如下有益效果:一方面,测试控制条件和测试项、测试项与测试项之间进行解耦,解决了传统测试中将测试控制条件与测试项保存到同一测试脚本,导致人工在不同测试控制条件时重新开发测试项对应的测试脚本的问题,提高了对产品的测试效率,且后续还可以在不同测试控制条件下,测试内容相同的情况下复用同一个测试项对应的测试脚本。另一方面,基于待测试产品对应的测试控制条件和测试项生成目标测试树,基于目标测试树确定的测试顺序可以自动运行测试控制条件的测试脚本以及运行测试项的测试脚本对待测试产品进行测试,无需人工触发测试,更进一步提高了测试效率。
基于上述所提供的产品测试方案,请参阅图1,图1为本申请实施例提供的一种产品测试方法的流程示意图。该产品测试方法可由测试平台执行,该测试平台可以是终端设备或者服务器,该终端设备可以是手机、平板电脑、笔记本电脑、掌上电脑、移动互联网设备(mobile internet device,MID)、可穿戴设备等智能设备;该服务器可以包括多个服务器(也可称节点),该多个服务器可以是独立的物理服务器,还可以是提供云服务、云数据库、云计算、云函数、云存储、网络服务、云通信、中间件服务、域名服务、安全服务、内容分发网络(Content Delivery Network,CDN)、以及大数据和人工智能平台等基础云计算服务的云服务器。本实施例中所描述的产品测试方法,可以包括以下步骤S101-S105:
S101、接收针对待测试产品的测试请求。该待测试产品可以是芯片、某种设备(如手机、电脑等等)、APP(应用程序,Application)等等,测试请求可以携带产品测试需求,该产品测试需求可以包括待测试产品的基础信息、需要对待测试产品进行测试的测试内容、测试控制条件等等。
在具体实现中,测试平台可以提供一个测试界面,在该测试界面中开发人员可以输入待测试产品的产品测试需求,该产品测试需求可以包括以下至少一种或多种信息:基础信息、待测试产品的测试内容、待测试产品测试时的测试控制条件等等。基础信息可以包括:待测试产品的型号、名称、生产日期等等;测试内容可以包括:测试待测试产品的功能、性能、产品内部连接等等;测试控制条件可以包括以下至少一种:环境条件、与待测试产品相关的关联条件、测试待测试产品的测试流程或测试逻辑控制等等;环境条件可以是:电压、温度等;与待测试产品相关的关联条件可以是:用于测试待测试产品的测试设备(如待测试产品为芯片,测试设备可以是手机、电脑等等)、待测试产品的产品状态(如芯片的某个功能处于关闭状态、芯片中射频开启)等等。当开发人员输入待测试产品的产品测试需求后,可以触发针对待测试产品的测试请求,相应的,测试平台会接收到针对待测试产品的测试请求,在该测试请求中可以携带在测试界面中输入的产品测试需求。
在一个实施例中,为了降低测试成本,且不影响测试设备的其他工作(如正常提供业务处理),可以设置定时器,即可以通过定时器在凌晨或者周末等对该待测试产品进行测试,具体的,获取系统时间,当系统时间满足定时器所设定的时间时,测试平台接收针对待测试产品的测试请求。
在一个实施例中,该测试请求中还可携带有目标用户的身份信息,该身份信息可以是目标用户的身份证号、账号、密码等等,目标用户可以是开发人员、产品需求人员等。测试平台可以对该目标用户的身份信息进行合法性验证,并在验证通过后,可以执行步骤S102。通过对目标用户的身份信息进行验证,可以保证合法用户对待测试产品进行测试。
S102、基于测试请求确定待测试产品对应的测试控制条件和测试项,其中,测试项包括待测试产品的测试内容,测试控制条件的数量可以是一个或多个,测试项的数量可以是一个或多个。
在一个实施例中,上述测试请求中携带有测试项和测试控制条件,测试平台可以直接从测试请求中获取待测试产品对应的测试控制条件和测试项。在另一个实施中,测试请求中携带有产品测试需求,然后基于该产品测试需求可以从多个测试控制条件和多个测试项中确定待测试产品对应的测试控制条件和测试项。如产品测试需求为测试待测试产品的存储功能,测试平台可以基于产品测试需求,从多个测试项和多个测试控制条件中确定待测试产品对应的测试项为测试待测试产品的存储功能。需要说明的是,在步骤S102中,当待测试产品无需在某个测试控制条件下进行测试时,测试平台基于测试请求确定待测试产品对应的测试项即可。
S103、基于测试控制条件和测试项生成目标测试树,该目标测试树可以用于测试待测试产品。目标测试树可以包括多个节点,目标测试树中的节点可以为测试控制条件,也可以为测试项。例如,目标测试树如图2所示,目标测试树包括4个节点,分别为节点1、节点2、节点3和节点4。节点1为测试控制条件1,节点2为测试项1,节点3为测试项2,节点4为测试项3。
其中,测试平台可以直接基于测试控制条件和测试项生成目标测试树。目标测试树包括父节点和子节点,测试平台可以根据产品测试需求从测试项和测试控制条件中确定父节点和父节点对应的子节点,并基于父节点和父节点对应的子节点生成目标测试树。作为一种实现方式,当测试控制条件的数量为一个,测试项的数量为一个时,测试平台可以将测试控制条件确定为父节点,将测试项确定为父节点对应的子节点。作为另一种实现方式,当测试控制条件的数量为多个,测试项的数量为多个时,测试平台可以从多个测试控制条件和多个测试项中确定父节点和该父节点对应的子节点,此时,父节点的数量可以为一个或多个,每个父节点对应的子节点的数量可以为一个或多个。
以生成的目标测试树至少包括第一节点和第二节点为例,第一节点是第二节点的父节点,测试平台可以根据产品测试需求从多个测试控制条件和多个测试项中确定第一节点和第一节点对应的第二节点,然后基于第一节点和第一节点对应的第二节点生成目标测试树。在生成目标测试树的过程中,从多个测试控制条件和多个测试项中可以确定多个类似于第一节点以及第一节点对应的第二节点,最终根据多个第一节点以及每个第一节点对应的第二节点生成目标测试树。
作为一种实现方式,在确定出一个第一节点和该第一节点对应的第二节点之后,可以将第一节点对应的第二节点看成新的第一节点,并继续从除第一节点和第二节点外剩下的测试控制条件和测试项中确定新的第一节点对应的第二节点,最终,生成目标测试树的第一节点可以是多个,第一节点对应的第二节点可以是一个或多个,测试平台可以根据多个第一节点以及每个第一节点对应的第二节点生成目标测试树。举例来说,经过步骤S102之后,待测试产品对应的测试控制条件的数量为2个,分别为测试控制条件1和测试控制条件2;待测试产品对应的测试项的数量为3,分别为测试项1、测试项2和测试项3;测试平台可以从2个测试控制条件和3个测试项中确定第一节点为测试控制条件1以及测试控制条件1对应的第二节点为测试项1和测试控制条件2,此时,第一节点对应的第二节点的数量为2个,且此时剩余测试项2和测试项3未被选择;然后测试平台可以将测试项1和测试控制条件2分别作为新的第一节点,并从剩余的测试项2和测试项3中确定测试项1对应的第二节点,以及从剩余的测试项2和测试项3中确定测试控制条件2对应的第二节点;假设从测试项2和测试项3中确定测试项1对应的第二节点为测试项2,从剩余的测试项2和测试项3中确定测试控制条件2对应的第二节点为测试项3。测试平台基于测试控制条件1对应的第二节点、测试项1对应的第二节点和测试控制条件2对应的第二节点,生成目标测试树,最终生成的目标测试树如图3a所示。
作为另一种实现方式,在确定出一个第一节点和该第一节点对应的第二节点之后,可以将第一节点对应的第二节点看成新的第一节点,并从上述多个测试控制条件和多个测试项中确定新的第一节点对应的第二节点。应理解的是,新的第一节点对应的第二节点可以为上述多个测试控制条件和多个测试项中的任意一个,不排除已经被选择的测试控制条件和测试项。举例来说,经过步骤S102之后,待测试产品对应的测试控制条件的数量为2,分别为测试控制条件A和测试控制条件B;待测试产品对应的测试项的数量为2,分别为测试项A和测试项B;如图3b所示,测试平台可以从2个测试控制条件和2个测试项中确定第一节点为测试控制条件A(即图3b中的31)以及测试控制条件A对应的第二节点为测试项A(即图3b中的32)和测试控制条件B(即图3b中的33),此时,第一节点对应的第二节点存在2个(即测试项A和测试控制条件B);然后,测试平台可以将测试项A和测试控制条件B分别作为新的第一节点(即将图3b中的32和33均看成新的第一节点),并继续从2个测试控制条件和2个测试项中确定测试项A对应的第二节点,以及从2个测试控制条件和2个测试项中确定测试控制条件B对应的第二节点;假设从2个测试控制条件和2个测试项中确定测试项A对应的第二节点为测试项B(即图3b中的34);从2个测试控制条件和2个测试项中确定测试控制条件B对应的第二节点同样为测试项B(即图3b中的35)。然后测试平台同样可以基于测试控制条件A对应的第二节点、测试项A对应的第二节点和测试控制条件B对应的第二节点,生成目标测试树,最终生成的目标测试树如图3b所示。
在另一个实施例中,测试平台可以根据测试控制条件和测试项生成目标测试树的实现方式还可以是:预先生成了一些测试树,预先生成的测试树可以是根据候选测试项和候选测试控制条件进行任意组合生成的,也可以是在历史测试过程中测试某些产品时所使用到的测试树。测试平台可以根据测试控制条件和测试项从预先生成的多个测试树中选择合适的测试树作为目标测试树。通过从预先生成多个测试树可以快速寻找合适的目标测试树,无需临时进行组合,提高对产品的测试效率。其中,目标测试树包括了上述测试控制条件和测试项,且测试控制条件与测试控制条件的连接关系、测试控制条件与测试项之间的连接关系、测试项与测试项之间的连接关系均满足产品测试需求。例如,测试项1、测试项2和测试控制条件1,产品测试需求包括测试项1与测试控制条件1存在连接关系,测试控制条件1与测试项2存在连接关系;目标测试树包括测试项1、测试项2和测试控制条件1,且在目标测试树中测试项1与测试控制条件1存在连接关系,测试控制条件1与测试项2存在连接关系。
需要说明的是,当步骤S102中基于测试请求仅确定了待测试产品对应的测试项时,说明在对待测试产品进行测试时,无需添加测试控制条件,因此,测试平台可以直接根据多个测试项生成目标测试树,或者可以根据多个测试项从预先生成的多个测试树中确定目标测试树。
S104、基于目标测试树确定测试顺序,目标测试树包括父节点和子节点,父节点与子节点之间的连接关系可以指示以下任意一种测试顺序:测试项至测试项的顺序、测试项至测试控制条件的顺序、测试控制条件至测试项的顺序、测试控制条件和测试控制条件的顺序。
在一个实施例中,测试平台可以基于目标测试树中父节点与子节点之间的连接关系确定测试顺序,该测试顺序包括父节点至子节点的顺序。以目标测试树至少包括第一节点和第二节点为例,第一节点是第二节点的父节点,此时,根据目标测试树中父节点与子节点之间的连接关系确定测试顺序的实现方式可以包括以下几种方式:
(1)当第一节点为第一测试控制条件,第二节点为第一测试项时,第一节点与第二节点之间的连接关系为第一测试控制条件连接第一测试项,测试顺序包括第一测试控制条件至第一测试项的顺序;其中,第一测试控制条件为多个测试控制条件中的任一个,第一测试项为多个测试项中的任一个。例如,图4中,第一节点为测试控制条件1、第二节点为测试项1,第一节点与第二节点之间的连接关系为测试控制条件1连接测试项1,此时,测试顺序包括测试控制条件1至测试项1的顺序。后续在对待测试产品进行测试时根据第一测试控制条件至第一测试项的顺序可以先运行第一测试控制条件的测试脚本,后运行第一测试项的测试脚本对待测试产品进行测试。
(2)当第一节点为第一测试控制条件,第二节点为第二测试控制条件时,第一节点与第二节点之间的连接关系为第一测试控制条件连接第二测试控制条件,测试顺序包括第一测试控制条件至第二测试控制条件的顺序;第一测试控制条件和第二测试控制条件为多个测试控制条件中的任意两个,第一测试控制条件不同于第二测试控制条件;例如,图4中,第一节点为测试控制条件1、第二节点为测试控制条件2,第一节点与第二节点之间的连接关系为测试控制条件1连接测试控制条件2,此时,测试顺序包括测试控制条件1至测试控制条件2的顺序。后续在对待测试产品进行测试时,根据第一测试控制条件至第二测试控制条件的顺序可以先运行第一测试控制条件的测试脚本,后运行第二测试控制条件的测试脚本对待测试产品进行测试。
(3)当第一节点为第一测试项,第二节点为第一测试控制条件时,第一节点与第二节点之间的连接关系为第一测试项连接第一测试控制条件,测试顺序包括第一测试项至第一测试控制条件的顺序;第一测试控制条件为多个测试控制条件中的任一个,第一测试项为多个测试项中的任一个;例如,图4中,第一节点为测试项1,第二节点为测试控制条件3,第一节点与第二节点之间的连接关系为测试项1连接测试控制条件3,此时,测试顺序包括测试项1至测试控制条件3的顺序。后续在对待测试产品进行测试时,根据第一测试项至第一测试控制条件的顺序先运行第一测试项的测试脚本,后运行第一测试控制条件的测试脚本对待测试产品进行测试。
(4)当第一节点为第一测试项,第二节点为第二测试项时,第一节点与第二节点之间的连接关系为第一测试项连接第二测试项,测试顺序包括第一测试项至第二测试项的顺序;第一测试项和第二测试项为多个测试项中的任意两个,第一测试项不同于第二测试项。例如,图4中,第一节点为测试项1、第二节点为测试项3,第一节点与第二节点之间的连接关系为测试项1连接测试项3,此时,测试顺序包括测试项1至测试项3。后续在对待测试产品进行测试时,根据第一测试项至第二测试项的顺序可以先运行第一测试项的测试脚本,后运行第二测试项的测试脚本对待测试产品进行测试。
在一个实施例中,目标测试树包括多个节点,多个节点包括第一节点和第二节点,每个节点可以是测试项,或者是测试控制条件,因此,上述测试顺序除包括第一节点至第二节点的顺序之外,还可包括其他父节点至子节点的顺序。测试顺序中所包括的父节点至子节点的顺序可以包括如上述(1)(2)(3)(4)中任一种所示的顺序。例如,多个节点还包括第三节点和第四节点,第三节点是第四节点的父节点,测试顺序还可包括第三节点至第四节点的顺序,此时,测试顺序包括第一节点至第二节点的顺序,第三节点至第四节点的顺序,本申请对此不作限定。
S105、基于测试顺序,运行测试控制条件的测试脚本以及运行测试项的测试脚本对待测试产品进行测试,得到待测试产品的目标测试数据。其中,目标测试数据可以包括运行每个测试项的测试脚本所得到的测试数据。例如,目标测试数据可以包括:运行第一测试项的测试脚本可以得到第一测试项对应的测试数据,以及运行第二测试项的测试脚本可以得到第二测试项对应的测试数据。
在具体实现中,测试平台可以基于测试顺序确定待运行的测试项或者测试控制条件,并获取待运行的测试项的测试脚本或者待运行的测试控制条件的测试脚本,然后运行待运行的测试项的测试脚本或者待运行的测试控制条件的测试脚本对待测试产品进行测试,得到待测试产品的目标测试数据。
例如,测试顺序包括第一测试控制条件至第一测试项的顺序,测试平台基于测试顺序确定待运行的是第一测试控制条件,测试平台可以获取第一测试控制条件的测试脚本,并运行第一测试控制条件的测试脚本,此时,运行第一测试控制条件的测试脚本是为了给测试项提供测试环境,不会产生关于待测试产品的测试数据。在运行第一测试控制条件的测试脚本后,可以基于测试顺序确定下一个待运行的是第一测试项,测试平台获取第一测试项的测试脚本,并运行第一测试项的测试脚本得到第一测试项对应的第一测试数据,此时,第一测试项的测试脚本是在第一测试控制条件下运行的。又例如,测试顺序包括第一测试项至第二测试项的顺序,测试平台可以基于测试顺序确定待运行的是第一测试项,测试平台可以获取第一测试项的测试脚本,并运行该第一测试项的测试脚本对待测试产品进行测试,得到第一测试项对应的测试数据;然后测试平台可以基于测试顺序确定待运行的是第二测试项,测试平台可以获取第二测试项的测试脚本,并运行该第二测试项的测试脚本对待测试产品进行测试,得到第二测试项对应的第二测试数据。
在一个实施例中,当测试顺序包括第一测试控制条件至第二测试项的顺序和第一测试控制条件至第三测试项的顺序,此时,意味着在第一测试控制条件的测试脚本运行之后,第二测试项和第三测试项可以无序运行对应的测试脚本。测试平台可以基于测试顺序确定待运行的是第一测试控制条件,测试平台可以获取第一测试控制条件的测试脚本,并运行该第一测试控制条件的测试脚本,然后测试平台可以基于测试顺序确定待运行的是第二测试项和第三测试项,测试平台可以同时在第一测试控制条件下并行运行第二测试项的测试脚本和第三测试项的测试脚本对应待测试产品进行测试。在一些实施例中,可以在第一测试控制条件下先运行第二测试项的测试脚本再运行第三测试项的测试脚本,或者先运行第三测试项的测试脚本再运行第二测试项的测试脚本均可。
在一个实施例中,当测试控制条件包括测试逻辑控制和测试条件时,该测试逻辑控制用于指示在测试条件下如何执行测试项的测试脚本。如图5a所示,测试平台可以基于测试顺序确定待运行的是测试控制条件,并运行该测试控制条件的测试脚本,然后基于测试逻辑控制遍历测试控制条件包括的测试条件,并确定在遍历到的测试条件下待运行的一个或多个测试项,并基于测试顺序在遍历到的测试条件下运行每个测试项的测试脚本,得到每个测试项对应的测试数据,在每个测试项的测试脚本运行完成后,继续遍历测试控制条件包括的其余测试条件,直到测试控制条件包括的所有测试条件均被遍历完成,则可以根据测试顺序,继续确定下个待运行的测试控制条件或者测试项,或者输出每个测试项对应的测试数据。
在一个实施例中,当基于测试请求确定待测试产品对应的多个测试项时,此时,认为不存在测试控制条件,测试平台可以基于测试顺序,运行每个测试项的测试脚本对待测试产品进行测试,得到待测试产品的目标测试数据。如图5b所示,基于测试顺序可以确定待运行的测试项,并运行该测试项的测试脚本,并在运行该测试项的测试脚本后,基于测试顺序确定该测试项(即父节点)对应的一个或多个子节点,每个子节点均为测试项(即图5b中的子测试项),测试平台可以执行多个测试项(即子测试项)中每个测试项的测试脚本,得到每个测试项(即子测试项)对应的测试数据。
在一个实施例中,在得到待测试产品的目标测试数据之后,可以输出待测试产品的目标测试数据,并将该目标测试数据保存至数据库中,可以实现数据实时更新;或者,在得到待测试产品的目标测试数据之后,直接将目标测试数据发送给开发人员,以便于开发人员能够及时分析该待测试产品的目标测试数据,提高数据分析效率。
在本申请实施例中,一方面,可以基于待测试产品对应的测试控制条件和测试项生成目标测试树,基于目标测试树确定的测试顺序可以自动运行测试控制条件的测试脚本以及运行测试项的测试脚本对待测试产品进行测试,提高了测试效率;另一方面,测试控制条件与测试项不存在与同一测试脚本中,即测试控制条件与测试项进行解耦,测试控制条件与测试项各自对应相应脚本,可以避免人工在不同测试控制条件时重新开发测试项对应的测试脚本,这样可以进一步提高对产品的测试效率。
基于上述提供的产品测试方案,请参阅图6,图6为本申请实施例提供的另一种产品测试方法的流程示意图。该产品测试方法可由测试平台执行,该产品测试方法可以包括以下步骤S601-S605:
S601、接收针对待测试产品的测试请求,并基于测试请求确定待测试产品对应的测试控制条件和测试项。
其中,步骤S601的具体实现方式可参见上述步骤S101-S102的具体实现方式,在此不再赘述。
S602、基于测试控制条件和测试项确定目标关联关系。测试控制条件的数量可以是一个或多个,测试项的数量可以是一个或多个,目标关联关系可以是指测试控制条件与测试项为父节点与子节点关系、测试项与测试项为父节点与子节关系、测试控制条件与测试控制条件为父节点与子节点关系。此处的父节点与子节点关系也可理解为在测试树中存在连接关系。在一些实施例中,目标关联关系还可以是:测试控制条件与测试项在测试树中的相对位置、测试控制条件与测试控制条件在测试树中的相对位置、测试项与测试项在目标测试树中的相对位置。也就是说,可以将测试树中的节点进行依次编号来确定相对位置,如测试控制条件1处于节点1,测试项处于节点3,测试控制条件1与测试项相对位置为2个节点。
其中,当测试控制条件的数量为一个,测试项的数量为一个时,测试平台根据测试控制条件和测试项可以确定目标关联关系,该目标关联关系为:测试控制条件与测试项为父节点与子节点关系。
当测试控制条件的数量为多个时,测试项的数量为多个时,测试平台可以基于测试控制条件和测试项确定测试控制条件与测试控制条件之间的父子(即父节点与子节点)关系、测试控制条件与测试项之间的父子关系以及测试项与测试项之间的父子关系。举例来说,测试控制条件的数量为2个,分别为测试控制条件1和测试控制条件2;测试项的数量为2个,分别为测试项1和测试项2,测试平台可以基于2个测试控制条件和2个测试项确定目标关联关系,该目标关联关系包括:测试控制条件1是测试项1的父节点,测试控制条件2为测试项2的父节点。当测试控制条件的数量为1个,测试项的数量为多个时,测试平台可以基于该测试控制条件和多个测试项确定目标关联关系,该目标关联关系可以包括:该测试控制条件为多个测试项的父节点,即每个测试项均为该测试控制条件的子节点。
S603、将多个候选测试树中与目标关联关系匹配的候选测试树作为目标测试树。
在具体实现中,测试平台可以获取多个候选测试树,每个候选测试树均包括参考关联关系,该参考关联关系由测试控制条件和测试项来确定的。然后测试平台可以将每个候选测试树包括的参考关联关系与目标关联关系匹配,并将与目标关联关系匹配的参考关联关系对应的候选测试树作为目标测试树,例如,目标关联关系包括测试项1是测试项2的父节点,测试控制条件2是测试项3的父节点,候选测试树1包括的参考关联关系为:测试项1是测试项2的父节点,测试控制条件2是测试项3的父节点,测试平台确定该参考关联关系与目标关联关系匹配,并将该参考关联关系对应的候选测试树1作为目标测试树。
在一个实施例中,多个候选测试树是经过筛选得到的,该筛选方式可以是:预先可以生成多个参考硬件环境中每个参考硬件环境对应的一个或多个测试树,在同一个硬件环境下的所有测试项可以任意组合生成测试树,该测试树在用于测试某个产品时无需更改产品与测试设备之间的硬件连接,就可将全部需要测试的测试内容(即测试项)组合在一起自动执行,提高了测试效率,降低测试成本。具体的,可以获取多个参考硬件环境,以及每个参考硬件环境对应的多个测试树,参考硬件环境包括待测试产品与测试设备之间的硬件连接,测试平台可以确定测试待测试产品的目标硬件环境;将目标硬件环境与多个参考硬件环境进行匹配,根据匹配结果确定一个或多个候选测试树。其中,目标硬件环境可以和多个参考硬件环境中的部分或者全部匹配,在这种情况下,一个或多个候选测试树中可以包括所有匹配到的参考硬件环境中每个参考硬件环境对应的一个或多个测试树。
S604、基于目标测试树确定测试顺序。
S605、基于测试顺序,运行测试控制条件的测试脚本以及运行测试项的测试脚本对待测试产品进行测试,得到待测试产品的目标测试数据。
在一个实施例中,为了保证测试数据的实时性,可以在运行每个测试项的测试脚本得到的测试数据后,实时输出每个测试项对应的测试数据。以目标测试数据包括运行第一测试项的测试脚本得到的第一测试数据为例,目标测试树包括根节点,该根节点用于输出第一测试数据。在具体实现时,可通过测试树反向抛出第一测试数据。此时,测试平台可以在反向抛出第一测试数据时,获取该第一测试数据。即任一测试项对应的测试数据均会像第一测试项对应的第一测试数据一样由根节点输出。
在另一个实施例中,由于某些测试项需要在一定测试控制条件下执行,因此,为了能够方便后续数据分析的准确性,在运行每个测试项的测试脚本过程中,需要通过反向抛出的方式判断在得到测试数据时是否增加了额外的测试控制条件。目标测试树包括子节点、父节点、根节点,所谓反向抛出是指:数据从测试树的子节点传递到父节点,并最终由根节点抛出。该目标测试数据包括在第一测试控制条件下运行第一测试项的测试脚本得到的第二测试数据,此时,上述根节点可以用于输出该第二测试数据,第二测试数据与第一测试控制条件关联。其中,在第一测试控制条件(即父节点)下运行第一测试项(即子节点)的测试脚本得到的第二测试数据的具体实现方式可以是:在第一测试控制条件下运行第一测试项的测试脚本,得到第一测试数据,然后将第一测试数据通过目标测试树进行反向抛出,并在进行反向抛出时,会被第一测试控制条件所捕获,并通过第一测试控制条件会自动判断是否有附加的数据需要添加到第一测试项的第一测试数据中。若第一测试控制条件确定需要添加附加的数据到第一测试项的第一测试数据中,则可以将附加的数据添加到第一测试项的第一测试数据中,得到第二测试数据,并由根节点输出第二测试数据。第二测试数据与第一测试控制条件关联是指:第二测试数据是根据第一测试控制条件所生成的,在进行分析时,需要参考第一测试控制条件。若第一测试控制条件确定无需添加附加的数据到第一测试项的第一测试数据中,则无需将附加的数据添加到第一测试项的第一测试数据中;此时,直接通过目标测试树的根节点输出第一测试数据即可。其中,附加的数据可以包括但不限于:第一测试控制条件、其他环境条件等等。
需要说明的是,通过任意子节点所产生的数据均可以通过目标测试树反向抛出,且任意子节点所产生的数据均可以在反向抛出时,被相应的父节点所捕获,并通过该父节点判断是否添加附加的数据。最终,在从根节点输出(或抛出)后,测试平台可以获取到全部测试项对应的测试数据。举例来说,测试树包括根节点“测试控制条件1”(即测试控制条件1作为测试控制条件2的父节点),“测试控制条件2”是“测试项1”的父节点。在“测试控制条件1”和“测试控制条件2”下运行“测试项1”的测试脚本,得到“测试项1”的测试数据,并通过测试树反向抛出“测试项1”的测试数据,在反向抛出时,首先被“测试控制条件2”捕获,“测试控制条件2”自动判断是否需要对“测试项1”的测试数据添加附加的数据,若确定需要对“测试项1”的测试数据添加附加的数据,则为“测试项1”的测试数据添加附加的数据(即添加“测试控制条件2”),并将添加了“测试控制条件2”的测试数据继续反向抛出,并由“测试控制条件1”捕获;然后由“测试控制条件1”自动判断是否需要对添加了“测试控制条件2”的测试数据添加附加的数据,若确定需要对添加了“测试控制条件2”的测试数据添加附加的数据,则为添加了“测试控制条件2”的测试数据添加附加的数据(即添加“测试控制条件1”),最终输出第二测试数据,此时第二测试数据中包括:“测试控制条件1”、“测试控制条件2”以及“测试项1”的测试数据。通过输出每个测试项对应的测试数据以及测试控制条件可以有效保证目标测试数据的完整性,有利于后续基于目标测试数据对产品的功能、性能等的分析。当所有测试项均有根节点输出对应的测试数据,可以保存该目标测试数据以及所有的测试控制条件。
在本申请实施例中,可以接收针对待测试产品的测试请求,并基于测试请求确定待测试产品对应的测试控制条件和测试项;基于测试控制条件和测试项确定目标关联关系;将多个候选测试树中与目标关联关系匹配的候选测试树作为目标测试树,并基于目标测试树确定测试顺序;基于测试顺序,运行测试控制条件的测试脚本以及运行测试项的测试脚本对待测试产品进行测试,得到待测试产品的目标测试数据。一方面,通过从多个候选测试树中直接确定目标测试树,无需实时构建目标测试树,提高了对产品测试效率;另一方面,测试控制条件和测试项的测试脚本分开,即测试控制条件与测试项进行解耦,测试控制条件与测试项各自对应相应脚本,可以避免人工在不同测试控制条件时重新开发测试项对应的测试脚本,这样可以进一步提高了对产品的测试效率,且可以方便后续的复用,减少了开发测试项的时间,降低开发成本。
基于上述产品测试方法,本申请实施例还公开了一种产品测试装置,该产品测试装置可以是运行于上述所提及的计算机设备中的一个计算机程序(包括程序代码)。该产品测试装置可以执行图1和图6所示的方法。请参见图7,所述产品测试装置可以包括如下单元:
接收单元701,用于接收针对待测试产品的测试请求;
处理单元702,用于基于所述测试请求确定所述待测试产品对应的测试控制条件和测试项;
所述处理单元702,还用于基于所述测试控制条件和所述测试项生成目标测试树,并基于所述目标测试树确定测试顺序;
所述处理单元702,还用于基于所述测试顺序,运行所述测试控制条件的测试脚本以及运行所述测试项的测试脚本对所述待测试产品进行测试,得到所述待测试产品的目标测试数据。
在一个实施例中,所述测试控制条件的数量为多个,所述测试项的数量为多个,所述目标测试树至少包括第一节点和第二节点,所述第一节点是所述第二节点的父节点;
当所述第一节点为第一测试控制条件,所述第二节点为第一测试项时,所述测试顺序包括所述第一测试控制条件至所述第一测试项的顺序;所述第一测试控制条件为多个测试控制条件中的任一个,所述第一测试项为多个测试项中的任一个;
当所述第一节点为第一测试控制条件,所述第二节点为第二测试控制条件时,所述测试顺序包括所述第一测试控制条件至所述第二测试控制条件的顺序;所述第一测试控制条件和所述第二测试控制条件为多个测试控制条件中的任意两个,所述第一测试控制条件不同于所述第二测试控制条件;
当所述第一节点为第一测试项,所述第二节点为第一测试控制条件时,所述测试顺序包括所述第一测试项至所述第一测试控制条件的顺序;所述第一测试控制条件为多个测试控制条件中的任一个,所述第一测试项为多个测试项中的任一个;
当所述第一节点为第一测试项,所述第二节点为第二测试项时,所述测试顺序包括所述第一测试项至所述第二测试项的顺序;所述第一测试项和所述第二测试项为多个测试项中的任意两个,所述第一测试项不同于所述第二测试项。
在一个实施例中,所述处理单元702在基于所述测试控制条件和所述测试项生成目标测试树时,可具体用于:
从所述多个测试控制条件和所述多个测试项中确定所述第一节点以及所述第一节点对应的第二节点;
基于所述第一节点以及所述第一节点对应的第二节点生成目标测试树。
在一个实施例中,处理单元702在基于所述测试控制条件和所述测试项生成目标测试树时,可具体用于:
基于所述测试控制条件和所述测试项确定目标关联关系;
将多个候选测试树中与所述目标关联关系匹配的候选测试树作为目标测试树。
在一个实施例中,所述处理单元702还用于:
获取多个参考硬件环境以及每个参考硬件环境对应的一个或多个测试树,每个参考硬件环境包括所述待测试产品与测试设备之间的硬件连接;
确定测试所述待测试产品的目标硬件环境;
将所述目标硬件环境与多个参考硬件环境进行匹配,根据匹配结果确定所述多个候选测试树。
在一个实施例中,所述目标测试树包括根节点,所述目标测试数据包括运行所述第一测试项的测试脚本得到的第一测试数据;所述根节点用于输出所述第一测试数据。
在一个实施例中,所述目标测试树包括根节点,所述目标测试数据包括在所述第一测试控制条件下运行所述第一测试项的测试脚本得到的第二测试数据;所述根节点用于输出所述第二测试数据,所述第二测试数据与所述第一测试控制条件关联。
可以理解的是,本实施例的产品测试装置的各功能单元可根据上述方法实施例图1和图6中的方法具体实现,其具体实现过程可以参照上述方法实施例图1和图6的相关描述,此处不再赘述。
进一步地,请参见图8,图8是本申请实施例提供的一种计算机设备的结构示意图。上述图1或图6对应实施例中的测试平台可以为图8所示的计算机设备。如图8所示,计算机设备可以包括:处理器801、输入设备802,输出设备803和存储器804。上述处理器801、输入设备802、输出设备803和存储器804通过总线805连接。存储器804用于存储计算机程序,所述计算机程序包括程序指令,处理器801用于执行存储器804存储的程序指令。
在本申请实施例中,处理器801通过运行存储器804中的可执行程序代码,执行如下操作:
接收针对待测试产品的测试请求,并基于所述测试请求确定所述待测试产品对应的测试控制条件和测试项;
基于所述测试控制条件和所述测试项生成目标测试树,并基于所述目标测试树确定测试顺序;
基于所述测试顺序,运行所述测试控制条件的测试脚本以及运行所述测试项的测试脚本对所述待测试产品进行测试,得到所述待测试产品的目标测试数据。
在一个实施例中,所述测试控制条件的数量为多个,所述测试项的数量为多个,所述目标测试树至少包括第一节点和第二节点,所述第一节点是所述第二节点的父节点;
当所述第一节点为第一测试控制条件,所述第二节点为第一测试项时,所述测试顺序包括所述第一测试控制条件至所述第一测试项的顺序;所述第一测试控制条件为多个测试控制条件中的任一个,所述第一测试项为多个测试项中的任一个;
当所述第一节点为第一测试控制条件,所述第二节点为第二测试控制条件时,所述测试顺序包括所述第一测试控制条件至所述第二测试控制条件的顺序;所述第一测试控制条件和所述第二测试控制条件为多个测试控制条件中的任意两个,所述第一测试控制条件不同于所述第二测试控制条件;
当所述第一节点为第一测试项,所述第二节点为第一测试控制条件时,所述测试顺序包括所述第一测试项至所述第一测试控制条件的顺序;所述第一测试控制条件为多个测试控制条件中的任一个,所述第一测试项为多个测试项中的任一个;
当所述第一节点为第一测试项,所述第二节点为第二测试项时,所述测试顺序包括所述第一测试项至所述第二测试项的顺序;所述第一测试项和所述第二测试项为多个测试项中的任意两个,所述第一测试项不同于所述第二测试项。
在一个实施例中,所述处理器801在基于所述测试控制条件和所述测试项生成目标测试树时,可具体用于:
从所述多个测试控制条件和所述多个测试项中确定所述第一节点以及所述第一节点对应的第二节点;
基于所述第一节点以及所述第一节点对应的第二节点生成目标测试树。
在一个实施例中,所述处理器801在基于所述测试控制条件和所述测试项生成目标测试树时,可具体用于:
基于所述测试控制条件和所述测试项确定目标关联关系;
将多个候选测试树中与所述目标关联关系匹配的候选测试树作为目标测试树。
在一个实施例中,所述处理器801还用于:
获取多个参考硬件环境以及每个参考硬件环境对应的一个或多个测试树,每个参考硬件环境包括所述待测试产品与测试设备之间的硬件连接;
确定测试所述待测试产品的目标硬件环境;
将所述目标硬件环境与多个参考硬件环境进行匹配,根据匹配结果确定所述多个候选测试树。
在一个实施例中,所述目标测试树包括根节点,所述目标测试数据包括运行所述第一测试项的测试脚本得到的第一测试数据;所述根节点用于输出所述第一测试数据。
在一个实施例中,所述目标测试树包括根节点,所述目标测试数据包括在所述第一测试控制条件下运行所述第一测试项的测试脚本得到的第二测试数据;所述根节点用于输出所述第二测试数据,所述第二测试数据与所述第一测试控制条件关联。
应当理解,在本申请实施例中,所述处理器801可以是中央处理单元(CentralProcessing Unit,CPU),该处理器801还可以是其他通用处理器、数字信号处理器(DigitalSignal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现成可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
该存储器804可以包括只读存储器和随机存取存储器,并向处理器801提供指令和数据。存储器804的一部分还可以包括非易失性随机存取存储器。
该输入设备802可以包括键盘等,并向处理器801输入目标用户的身份信息;该输出设备803可以包括显示器等。
具体实现中,本申请实施例中所描述的处理器801、输入设备802、输出设备803和存储器804可执行上述所有实施例中描述的实现方式,也可执行上述装置中所描述的实现方式,在此不再赘述。
本申请实施例中提供一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序包括程序指令,所述程序指令被处理器执行时,可执行上述所有实施例中所执行的步骤。
本申请实施例还提供一种计算机程序产品或计算机程序,计算机程序产品或计算机程序包括计算机指令,计算机指令存储在计算机可读存储介质中,计算机指令被计算机设备的处理器执行时,执行上述所有实施例中的方法。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,的程序可存储于一计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,的存储介质可为磁碟、光盘、只读存储记忆体(Read-Only Memory,ROM)或随机存储记忆体(Random Access Memory,RAM)等。
以上所揭露的仅为本申请一种较佳实施例而已,当然不能以此来限定本申请之权利范围,本领域普通技术人员可以理解实现上述实施例的全部或部分流程,并依本申请权利要求所作的等同变化,仍属于发明所涵盖的范围。
Claims (9)
1.一种产品测试方法,其特征在于,包括:
接收针对待测试产品的测试请求,并基于所述测试请求确定所述待测试产品对应的测试控制条件和测试项;
基于所述测试控制条件和所述测试项生成目标测试树,并基于所述目标测试树确定测试顺序,所述测试顺序包括测试项的测试脚本与测试控制条件的测试脚本的运行顺序,所述测试项与所述测试控制条件相互解耦;
基于所述测试顺序,运行所述测试控制条件的测试脚本以及运行所述测试项的测试脚本对所述待测试产品进行测试,得到所述待测试产品的目标测试数据,所述目标测试树包括根节点,所述目标测试数据包括在第一测试控制条件下运行第一测试项的测试脚本得到的第二测试数据;所述根节点用于输出所述第二测试数据,所述第二测试数据与所述第一测试控制条件关联。
2.如权利要求1所述的方法,其特征在于,所述测试控制条件的数量为多个,所述测试项的数量为多个,所述目标测试树至少包括第一节点和第二节点,所述第一节点是所述第二节点的父节点;
当所述第一节点为所述第一测试控制条件,所述第二节点为所述第一测试项时,所述测试顺序包括所述第一测试控制条件至所述第一测试项的顺序;所述第一测试控制条件为多个测试控制条件中的任一个,所述第一测试项为多个测试项中的任一个;
当所述第一节点为所述第一测试控制条件,所述第二节点为第二测试控制条件时,所述测试顺序包括所述第一测试控制条件至所述第二测试控制条件的顺序;所述第一测试控制条件和所述第二测试控制条件为多个测试控制条件中的任意两个,所述第一测试控制条件不同于所述第二测试控制条件;
当所述第一节点为所述第一测试项,所述第二节点为所述第一测试控制条件时,所述测试顺序包括所述第一测试项至所述第一测试控制条件的顺序;所述第一测试控制条件为多个测试控制条件中的任一个,所述第一测试项为多个测试项中的任一个;
当所述第一节点为所述第一测试项,所述第二节点为第二测试项时,所述测试顺序包括所述第一测试项至所述第二测试项的顺序;所述第一测试项和所述第二测试项为多个测试项中的任意两个,所述第一测试项不同于所述第二测试项。
3.如权利要求2所述的方法,其特征在于,所述基于所述测试控制条件和所述测试项生成目标测试树,包括:
从所述多个测试控制条件和所述多个测试项中确定所述第一节点以及所述第一节点对应的第二节点;
基于所述第一节点以及所述第一节点对应的第二节点生成目标测试树。
4.如权利要求1所述的方法,其特征在于,所述基于所述测试控制条件和所述测试项生成目标测试树,包括:
基于所述测试控制条件和所述测试项确定目标关联关系;
将多个候选测试树中与所述目标关联关系匹配的候选测试树作为目标测试树。
5.如权利要求4所述的方法,其特征在于,所述方法还包括:
获取多个参考硬件环境以及每个参考硬件环境对应的一个或多个测试树,每个参考硬件环境包括所述待测试产品与测试设备之间的硬件连接;
确定测试所述待测试产品的目标硬件环境;
将所述目标硬件环境与多个参考硬件环境进行匹配,根据匹配结果确定所述多个候选测试树。
6.如权利要求2所述的方法,其特征在于,所述目标测试树包括根节点,所述目标测试数据包括运行所述第一测试项的测试脚本得到的第一测试数据;
所述根节点用于输出所述第一测试数据。
7.一种产品测试装置,其特征在于,包括:
接收单元,用于接收针对待测试产品的测试请求;
处理单元,用于基于所述测试请求确定所述待测试产品对应的测试控制条件和测试项;
所述处理单元,还用于基于所述测试控制条件和所述测试项生成目标测试树,并基于所述目标测试树确定测试顺序,所述测试顺序包括测试项的测试脚本与测试控制条件的测试脚本的运行顺序,所述测试项与所述测试控制条件相互解耦;
所述处理单元,还用于基于所述测试顺序,运行所述测试控制条件的测试脚本以及运行所述测试项的测试脚本对所述待测试产品进行测试,得到所述待测试产品的目标测试数据,所述目标测试树包括根节点,所述目标测试数据包括在第一测试控制条件下运行第一测试项的测试脚本得到的第二测试数据;所述根节点用于输出所述第二测试数据,所述第二测试数据与所述第一测试控制条件关联。
8.一种计算机设备,其特征在于,包括:
存储器,用于存储计算机程序;
处理器,运行所述存储器中存储的计算机程序,实现如权利要求1-6任一项所述的产品测试方法。
9.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时用于实现如权利要求1-6任一项所述的产品测试方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210735750.8A CN114812695B (zh) | 2022-06-27 | 2022-06-27 | 一种产品测试方法、装置、计算机设备和存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210735750.8A CN114812695B (zh) | 2022-06-27 | 2022-06-27 | 一种产品测试方法、装置、计算机设备和存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN114812695A CN114812695A (zh) | 2022-07-29 |
CN114812695B true CN114812695B (zh) | 2022-10-28 |
Family
ID=82522781
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210735750.8A Active CN114812695B (zh) | 2022-06-27 | 2022-06-27 | 一种产品测试方法、装置、计算机设备和存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114812695B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117453551B (zh) * | 2023-10-30 | 2024-08-06 | 赛力斯汽车有限公司 | 一种脚本性能的测试方法、装置及存储介质 |
Citations (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104198868A (zh) * | 2014-09-23 | 2014-12-10 | 厦门雅迅网络股份有限公司 | 一种可灵活扩展和动态配置的智能工装 |
CN105279093A (zh) * | 2015-11-26 | 2016-01-27 | 上海斐讯数据通信技术有限公司 | 软件测试方法、装置及设备 |
CN108255653A (zh) * | 2018-01-02 | 2018-07-06 | 深圳壹账通智能科技有限公司 | 一种产品的测试方法及其终端 |
CN110289043A (zh) * | 2019-06-26 | 2019-09-27 | 杭州宏杉科技股份有限公司 | 存储设备测试方法、装置、电子设备 |
CN110502383A (zh) * | 2019-08-27 | 2019-11-26 | Oppo(重庆)智能科技有限公司 | 终端设备的测试方法及装置 |
CN111224848A (zh) * | 2020-01-17 | 2020-06-02 | 腾讯科技(深圳)有限公司 | 网络质量测试方法、装置、设备及存储介质 |
CN111435329A (zh) * | 2019-01-14 | 2020-07-21 | 北京京东尚科信息技术有限公司 | 一种自动化测试方法和装置 |
CN112286779A (zh) * | 2019-07-23 | 2021-01-29 | 腾讯科技(深圳)有限公司 | 测试任务处理方法、装置、存储介质和计算机设备 |
CN112905439A (zh) * | 2019-12-03 | 2021-06-04 | 北京小米移动软件有限公司 | 终端测试方法、终端测试装置及存储介质 |
CN113468301A (zh) * | 2021-06-16 | 2021-10-01 | 普赛微科技(杭州)有限公司 | 集成电路测试方案的自动化生成方法和系统 |
CN113672504A (zh) * | 2021-08-04 | 2021-11-19 | 深圳Tcl新技术有限公司 | 一种智能设备测试方法、装置、设备以及存储介质 |
CN113778903A (zh) * | 2021-11-10 | 2021-12-10 | 中国电力科学研究院有限公司 | 一种配电终端测试用例的生成方法、系统及存储介质 |
CN114416451A (zh) * | 2022-01-19 | 2022-04-29 | 曙光信息产业股份有限公司 | 服务器测试方法、装置、计算机设备和存储介质 |
-
2022
- 2022-06-27 CN CN202210735750.8A patent/CN114812695B/zh active Active
Patent Citations (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104198868A (zh) * | 2014-09-23 | 2014-12-10 | 厦门雅迅网络股份有限公司 | 一种可灵活扩展和动态配置的智能工装 |
CN105279093A (zh) * | 2015-11-26 | 2016-01-27 | 上海斐讯数据通信技术有限公司 | 软件测试方法、装置及设备 |
CN108255653A (zh) * | 2018-01-02 | 2018-07-06 | 深圳壹账通智能科技有限公司 | 一种产品的测试方法及其终端 |
CN111435329A (zh) * | 2019-01-14 | 2020-07-21 | 北京京东尚科信息技术有限公司 | 一种自动化测试方法和装置 |
CN110289043A (zh) * | 2019-06-26 | 2019-09-27 | 杭州宏杉科技股份有限公司 | 存储设备测试方法、装置、电子设备 |
CN112286779A (zh) * | 2019-07-23 | 2021-01-29 | 腾讯科技(深圳)有限公司 | 测试任务处理方法、装置、存储介质和计算机设备 |
CN110502383A (zh) * | 2019-08-27 | 2019-11-26 | Oppo(重庆)智能科技有限公司 | 终端设备的测试方法及装置 |
CN112905439A (zh) * | 2019-12-03 | 2021-06-04 | 北京小米移动软件有限公司 | 终端测试方法、终端测试装置及存储介质 |
CN111224848A (zh) * | 2020-01-17 | 2020-06-02 | 腾讯科技(深圳)有限公司 | 网络质量测试方法、装置、设备及存储介质 |
CN113468301A (zh) * | 2021-06-16 | 2021-10-01 | 普赛微科技(杭州)有限公司 | 集成电路测试方案的自动化生成方法和系统 |
CN113672504A (zh) * | 2021-08-04 | 2021-11-19 | 深圳Tcl新技术有限公司 | 一种智能设备测试方法、装置、设备以及存储介质 |
CN113778903A (zh) * | 2021-11-10 | 2021-12-10 | 中国电力科学研究院有限公司 | 一种配电终端测试用例的生成方法、系统及存储介质 |
CN114416451A (zh) * | 2022-01-19 | 2022-04-29 | 曙光信息产业股份有限公司 | 服务器测试方法、装置、计算机设备和存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN114812695A (zh) | 2022-07-29 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110474900B (zh) | 一种游戏协议测试方法及装置 | |
CN109582559B (zh) | 系统的验证方法、装置、电子设备及存储介质 | |
CN107220169B (zh) | 一种模拟服务器返回定制化数据的方法和设备 | |
CN114546738A (zh) | 服务器通用测试方法、系统、终端及存储介质 | |
CN107621963B (zh) | 一种软件部署方法、软件部署系统及电子设备 | |
CN110930254A (zh) | 基于区块链的数据处理方法、装置、终端及介质 | |
CN114812695B (zh) | 一种产品测试方法、装置、计算机设备和存储介质 | |
CN111181805A (zh) | 一种基于测试用例的微服务测试挡板生成方法及系统 | |
CN113778864A (zh) | 一种测试用例的生成方法和装置、电子设备和存储介质 | |
US10310962B2 (en) | Infrastructure rule generation | |
CN111708712A (zh) | 用户行为测试用例的生成方法、流量回放方法及电子设备 | |
CN112015648A (zh) | 基于自动化脚本的测试方法、装置、计算机设备和介质 | |
US11347533B2 (en) | Enhanced virtual machine image management system | |
CN109684205B (zh) | 系统测试方法、装置、电子设备及存储介质 | |
CN116401113B (zh) | 一种异构众核架构加速卡的环境验证方法、装置及介质 | |
CN117493188A (zh) | 接口测试方法及装置、电子设备及存储介质 | |
CN116204396A (zh) | 一种针对分析型数据库性能的测试方法和装置 | |
CN112667498B (zh) | 服务器搭建方法、装置、计算机设备和可读存储介质 | |
CN115587048A (zh) | 回归测试方法、终端设备及计算机可读存储介质 | |
CN110618943B (zh) | 安防服务测试方法、装置、电子设备及可读存储介质 | |
CN114416596A (zh) | 一种测试应用的方法、装置、计算机设备及存储介质 | |
CN115757172A (zh) | 测试执行方法、装置、存储介质及计算机设备 | |
CN114356781A (zh) | 软件功能测试方法和装置 | |
CN113672514A (zh) | 测试方法、装置、服务器及存储介质 | |
CN112363933A (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 | ||
CP03 | Change of name, title or address | ||
CP03 | Change of name, title or address |
Address after: 200080 7th floor, No.137 Haining Road, Hongkou District, Shanghai Patentee after: Xinyaohui Technology Co.,Ltd. Country or region after: China Address before: 519000 room 901-9003, Hengqin international business center, No. 3000, Huandao East Road, Hengqin new area, Zhuhai, Guangdong Patentee before: Xinyaohui Technology Co.,Ltd. Country or region before: China |