CN113377667A - 一种基于场景的测试方法、装置、计算机设备及存储介质 - Google Patents
一种基于场景的测试方法、装置、计算机设备及存储介质 Download PDFInfo
- Publication number
- CN113377667A CN113377667A CN202110724912.3A CN202110724912A CN113377667A CN 113377667 A CN113377667 A CN 113377667A CN 202110724912 A CN202110724912 A CN 202110724912A CN 113377667 A CN113377667 A CN 113377667A
- Authority
- CN
- China
- Prior art keywords
- test
- script
- scene
- testing
- user side
- 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
Links
- 238000012360 testing method Methods 0.000 title claims abstract description 550
- 238000013515 script Methods 0.000 claims abstract description 79
- 238000000034 method Methods 0.000 claims abstract description 34
- 238000012216 screening Methods 0.000 claims abstract description 15
- 238000010998 test method Methods 0.000 claims abstract description 9
- 230000006870 function Effects 0.000 claims description 15
- 238000004590 computer program Methods 0.000 claims description 8
- 238000011161 development Methods 0.000 description 4
- 238000010586 diagram Methods 0.000 description 3
- 230000003287 optical effect Effects 0.000 description 2
- 238000012545 processing Methods 0.000 description 2
- 230000003068 static effect Effects 0.000 description 2
- XSQUKJJJFZCRTK-NJFSPNSNSA-N UREA C 14 Chemical compound N[14C](N)=O XSQUKJJJFZCRTK-NJFSPNSNSA-N 0.000 description 1
- 238000007405 data analysis Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 239000012634 fragment Substances 0.000 description 1
- 238000011990 functional testing Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000004806 packaging method and process Methods 0.000 description 1
- 239000000779 smoke Substances 0.000 description 1
Images
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/3684—Test management for test design, e.g. generating new test cases
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/30—Creation or generation of source code
- G06F8/36—Software reuse
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- Quality & Reliability (AREA)
- Debugging And Monitoring (AREA)
Abstract
本发明公开了一种基于场景的测试方法、装置、计算机设备及存储介质,该方法包括:接收用户端发送的测试指令,其中,所述测试指令包括:测试脚本、测试对象和测试场景;从预设的框架库中查找到与所述测试脚本相匹配的测试框架,并根据所述测试框架和所述测试脚本生成测试用例;从生成的测试用例中筛选出与所述测试场景相关联的目标测试用例;通过所述目标测试用例对所述测试对象进行测试,以判断所述测试对象是否具有与所述测试场景对应的功能;获取测试结果,并将所述测试结果发送至所述用户端;本发明便于测试人员进行场景测试并提高了测试效率。
Description
技术领域
本发明涉及测试技术领域,特别涉及一种基于场景的测试方法、装置、计算机设备及存储介质。
背景技术
随着IT行业对测试效率的要求不断增高,自动化测试成为测试人员必备的技能。在现有技术中,测试人员主要利用测试框架和选择开发接口测试平台这两种方式进行自动化测试,若选择使用测试框架,需要测试开发人员或项目组测试人员自行开发维护测试脚本,对于测试开发能力薄弱的功能测试人员,往往无能力完成项目整体测试的自动化落地。若选择开发接口测试平台,则需要由专门的测试开发人员进行平台开发,但这种方式成本一般很高,形成的平台不一定能满足测试人员的实际需要,导致平台方案往往投入高,产出低。
在现有技术中,当开发人员进行场景测试时,不仅需要手动编写测试用例还需要搭建测试场景以确定出与该测试场景关联的测试用例,从而进行场景测试,当进行场景测试时会浪费开发人员大量的时间,而且对开发人员有一定的技术要求;因此,在现有技术中存在无法做到真正意义上的自动化测试、测试方案不统一、难以复用的技术问题。
发明内容
本发明的目的在于提供一种基于场景的测试方法、装置、计算机设备及存储介质,能够根据用户上传的测试脚本自动化的生成对应的测试用例,并根据生成的测试用例自动化的进行场景测试,便于测试人员进行场景测试并提高了测试效率。
根据本发明的一个方面,提供了一种基于场景的测试方法,该方法包括如下步骤:
接收用户端发送的测试指令,其中,所述测试指令包括:测试脚本、测试对象和测试场景;
从预设的框架库中查找到与所述测试脚本相匹配的测试框架,并根据所述测试框架和所述测试脚本生成测试用例;
从生成的测试用例中筛选出与所述测试场景相关联的目标测试用例;
通过所述目标测试用例对所述测试对象进行测试,以判断所述测试对象是否具有与所述测试场景对应的功能;
获取测试结果,并将所述测试结果发送至所述用户端。
可选的,在所述接收用户端发送的测试指令之后,所述方法还包括:
判断所述测试脚本的文件类型是否为预设文件类型,若否,则向所述用户端发送测试失败信息;和/或,
判断所述测试脚本的存储路径是否为预设存储路径,若否,则向所述用户端发送测试失败信息。
可选的,所述根据所述测试框架和所述测试脚本生成测试用例,包括:
从所述测试脚本中解析出测试配置信息和代码片段;
将所述测试配置信息填充到所述测试框架中的配置区域,并将各个代码片段分别填充到所述测试框架中对应的代码区域,以生成所述测试用例。
可选的,在所述根据所述测试框架和所述测试脚本生成测试用例之后,所述方法还包括:
判断所述测试框架中的配置区域和各个代码区域是否均被填充完整,若否,则向所述用户端发送测试失败信息。
可选的,所述从生成的测试用例中筛选出与所述测试场景相关联的目标测试用例,包括:
确定出与所述测试场景对应的场景识别信息;
依次判断生成的每个测试用例的配置信息中是否包含所述场景识别信息,若是,则设置为目标测试用例。
可选的,所述获取测试结果,并将所述测试结果发送至所述用户端,包括:
针对一个测试用例,判断所述测试用例的真实测试结果是否与所述测试用例对应的预设测试结果一致,若是,则判定所述测试用例测试成功,若否,则判定所述测试用例测试失败;
根据测试成功的目标测试用例的数量统计出测试成功率,并将所述测试成功率发送至所述用户端。
为了实现上述目的,本发明还提供一种基于场景的测试方法的装置,该装置具体包括以下组成部分:
接收模块,用于接收用户端发送的测试指令,其中,所述测试指令包括:测试脚本、测试对象和测试场景;
生成模块,用于从预设的框架库中查找到与所述测试脚本相匹配的测试框架,并根据所述测试框架和所述测试脚本生成测试用例;
筛选模块,用于从生成的测试用例中筛选出与所述测试场景相关联的目标测试用例;
测试模块,用于通过所述目标测试用例对所述测试对象进行测试,以判断所述测试对象是否具有与所述测试场景对应的功能;
结果模块,用于获取测试结果,并将所述测试结果发送至所述用户端。
可选的,所述接收模块,还用于:
判断所述测试脚本的文件类型是否为预设文件类型,若否,则向所述用户端发送测试失败信息;和/或,判断所述测试脚本的存储路径是否为预设存储路径,若否,则向所述用户端发送测试失败信息。
为了实现上述目的,本发明还提供一种计算机设备,该计算机设备具体包括:存储器、处理器以及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述介绍的基于场景的测试方法的步骤。
为了实现上述目的,本发明还提供一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现上述介绍的基于场景的测试方法的步骤。
本发明提供的基于场景的测试方法、装置、计算机设备及存储介质,能够对用户上传的测试脚本进行解析,根据解析后的结果通过测试框架生成测试用例,并将测试用例在测试场景中进行测试,无需开发人员手动编写测试脚本、寻找测试框架生成测试用例及搭建场景进行测试,方便开发人员进行自动化测试。此外,在本发明中,各个测试脚本通过不同的测试框架生成统一方案的测试用例,使得测试方案统一化,复用性更高。
附图说明
通过阅读下文优选实施方式的详细描述,各种其他的优点和益处对于本领域普通技术人员将变得清楚明了。附图仅用于示出优选实施方式的目的,而并不认为是对本发明的限制。而且在整个附图中,用相同的参考符号表示相同的部件。在附图中:
图1为实例一提供的基于场景的测试方法的一种可选的流程示意图;
图2为实例二提供的基于场景的测试装置的一种可选的程序模块示意图;
图3为实例三提供的计算机设备的一种可选的硬件架构示意图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅用以解释本发明,并不用于限定本发明。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
实施例一
本发明实施例提供了一种基于场景的测试方法,应用于测试平台,如图1所示,该方法具体包括以下步骤:
步骤S101:接收用户端发送的测试指令,其中,所述测试指令包括:测试脚本、测试对象和测试场景。
其中,所述测试对象为测试接口或界面按钮;即,测试某个接口是否具有预期功能,或测试某个界面按钮是否具有预期功能;
所述测试场景包括:冒烟测试场景、回归校验场景、功能测试场景(例如:报告生成场景、邮件推送场景、登录测试场景、定时任务场景)。
在本实施例中,当测试平台接收到由所述用户端发送的测试指令时,测试平台将包含在所述测试指令中的测试脚本存储在预设的测试脚本库内;其中,所述测试脚本包括:配置信息和代码片段,且所述配置信息包括:文件名称、存储路径、所属类信息和所属模块信息。
具体的,在步骤S101之后,所述方法还包括:
判断所述测试脚本的文件类型是否为预设文件类型,若否,则向所述用户端发送测试失败信息;和/或,
判断所述测试脚本的存储路径是否为预设存储路径,若否,则向所述用户端发送测试失败信息。
其中,所述预设文件类型为测试脚本的文件封装类型,例如:rar、zip;所述预设存储路径为测试脚本在测试脚本库内的存储路径,例如:/test/jzk/、/test/wzl/。
需要说明的是,在实际应用中所述测试脚本所使用的计算机语言可以是不同种类的语言,例如:python、java、C++。此外,包含在所述测试指令中的测试脚本的数量为一个或者多个。
在本实施例中用户端可以一次性的将多个测试脚本上传至测试平台,以便测试平台批量生成测试用例,从而提高了测试效率。
步骤S102:从预设的框架库中查找到与所述测试脚本相匹配的测试框架,并根据所述测试框架和所述测试脚本生成测试用例。
在本实施例中,事先将多个预设的测试框架存储至框架库中,以便测试时使用;在每个测试框架中预留有用于填充配置信息的配置区域,以及预留有用于填充代码片段的代码区域;当测试框架中的配置区域和代码区域均被填充完整时,即可生成测试用例。
在实际应用中框架库中可包含多种类型的测试框架,例如:pytest框架、unittest框架、java框架、PO框架。
具体的,步骤S102,包括:
A1:从所述测试脚本中解析出测试配置信息和代码片段;
A2:将所述测试配置信息填充到所述测试框架中的配置区域,并将各个代码片段分别填充到所述测试框架中对应的代码区域,以生成所述测试用例。
进一步的,步骤A1,具体包括:
从所述测试脚本中解析出以下配置信息:文件名称、存储路径、所属类信息和所属模块信息。
进一步的,在步骤A2之后,所述方法还包括:
将生成的测试用例存储在预先设置的测试用例库内,以供测试调用。
在本实施例中,将各种不同计算机语言的所述测试脚本通过对应的测试框架,生成统一的测试用例以进行测试,使得整体测试方案统一化,实现对测试框架的复用。
更进一步的,在步骤S102之后,所述方法还包括:
判断所述测试框架中的配置区域和各个代码区域是否均被填充完整,若否,则向所述用户端发送测试失败信息。
在实际应用中,当所述测试框架中存在没有被填充完整的配置区域和/或代码区域时,获取与未被填充完整的配置区域对应的预设配置模板信息和/或获取与未被填充完整的代码区域对应的预设模板代码以辅助生成测试用例,从而减少生成测试用例失败的情况。
在本实施例中,当设置测试框架时,会为该测试框架的配置区域设置对应的配置模板信息,并为该测试框架的各个代码区域设置对应的模板代码,以便当用户端上传的测试脚本存在信息缺失的情况下,也可以根据预设的信息形成测试用例,从而防止测试中断。
步骤S103:从生成的测试用例中筛选出与所述测试场景相关联的目标测试用例。
具体的,步骤S103,包括:
B1:确定出与所述测试场景对应的场景识别信息;
在本实施例中,预先为每个测试场景设置对应的场景识别信息;其中,所述场景识别信息可以为场景关键词、场景编码等。
B2:依次判断生成的每个测试用例的配置信息中是否包含所述场景识别信息,若是,则设置为目标测试用例。
进一步的,步骤B2,具体包括:
从每个测试用例的配置信息中解析出文件名称、存储路径、所属类信息和所属模块信息;
针对一个测试用例,判断与所述测试用例对应的文件名称、存储路径、所属类信息或所属模块信息中是否包含所述场景识别信息;
若是,则将所述测试用例设置为目标测试用例。
在本实施例中,只要测试用例对应的所属类信息、所属模块信息、文件名称或存储路径中任意一种信息包含所述场景识别信息,即可将该测试用例设置为目标测试用例。例如,在登录测试场景中,若任一测试用例的文件名称、存储路径、所属类信息、所属模块信息中包含场景关键词login,则将该测试用例设置为与登录测试场景关联的目标测试用例。
需要说明的是,由于在用户端上传的测试脚本中包含配置信息,所以当根据测试脚本和测试框架生成测试用例时,测试脚本中的配置信息会继承到测试用例中,因此,在每个测试用例中也会具有以下:所属类信息、所属模块信息、文件名称、存储路径配置信息。
步骤S104:通过所述目标测试用例对所述测试对象进行测试,以判断所述测试对象是否具有与所述测试场景对应的功能。
所述测试场景对应的功能包括:生成实时报告、实时推送邮件、定时执行任务。
在本实施例中,所述测试场景对应的功能可根据用户的需求进行扩展性开发,大大降低了整体测试的开发复杂度。
在实际应用中,所述测试指令也可包括多个测试场景,可从生成的所有测试用例中分别确定出与每个测试场景关联的目标测试用例,并分别根据每个测试场景关联的目标测试用例同时进行多个场景的场景测试。
步骤S105:获取测试结果,并将所述测试结果发送至所述用户端。
具体的,步骤S105,包括:
C1:针对一个测试用例,判断所述测试用例的真实测试结果是否与所述测试用例对应的预设测试结果一致,若是,则判定所述测试用例测试成功,若否,则判定所述测试用例测试失败;
在本实施例中,可以将生成的测试结果进行实时统计并发送至所述用户端进行结果展示。
C2:根据测试成功的目标测试用例的数量统计出测试成功率,并将所述测试成功率发送至所述用户端。
通过统计测试成功率,以便于开发人员可以直观的了解测试执行情况,并可对测试结果进行数据分析。
本实施例能够对用户上传的测试脚本进行解析,根据解析后的结果通过测试框架生成测试用例,并将测试用例在测试场景中进行测试,无需开发人员手动编写测试脚本、寻找测试框架生成测试用例及搭建场景进行测试,方便开发人员进行自动化测试。此外,在本实施例中,各个测试脚本通过不同的测试框架生成统一方案的测试用例,使得测试方案统一化。
在本实施例中,测试平台将测试脚本统一收集并解析,基于解析后的结果利用与测试脚本对应的测试框架生成测试用例,从而将该测试用例应用于所述用户端创建的测试场景中以进行场景测试,最后将测试结果发送至用户端以进行功能展示,与现有技术相比,达到了一键上传测试脚本,统一解析生成测试用例,对测试用例进行不同功能测试的效果。
实施例二
基于上述实施例一中提供的基于场景的测试方法,本实施例中提供一种基于场景的测试装置,具体地,图2示出了该基于场景的测试装置的可选的结构框图,该基于场景的测试装置被分割成一个或多个程序模块,一个或者多个程序模块被存储于存储介质中,并由一个或多个处理器所执行,以完成本发明。本发明所称的程序模块是指能够完成特定功能的一系列计算机程序指令段,比程序本身更适合描述基于场景的测试装置在存储介质中的执行过程,以下描述将具体介绍本实施例各程序模块的功能。
如图2所示,基于场景的测试装置具体包括以下组成部分:
接收模块201,用于接收用户端发送的测试指令,其中,所述测试指令包括:测试脚本、测试对象和测试场景。
具体的,接收模块201,用于:
判断所述测试脚本的文件类型是否为预设文件类型,若否,则向所述用户端发送测试失败信息;和/或,
判断所述测试脚本的存储路径是否为预设存储路径,若否,则向所述用户端发送测试失败信息。
在本实施例中用户端可以一次性的将多个测试脚本上传至测试平台,以便测试平台批量生成测试用例,从而提高了测试效率。
生成模块202,用于从预设的框架库中查找到与所述测试脚本相匹配的测试框架,并根据所述测试框架和所述测试脚本生成测试用例。
具体的,生成模块202,用于:
从所述测试脚本中解析出测试配置信息和代码片段;
将所述测试配置信息填充到所述测试框架中的配置区域,并将各个代码片段分别填充到所述测试框架中对应的代码区域,以生成所述测试用例。
其中,所述配置信息包括:文件名称、存储路径、所属类信息和所属模块信息。
进一步的,生成模块202,还用于:
判断所述测试框架中的配置区域和各个代码区域是否均被填充完整,若否,则向所述用户端发送测试失败信息。
在实际应用中,当所述测试框架中存在没有被填充完整的配置区域和/或代码区域时,获取与未被填充完整的配置区域对应的预设配置模板信息和/或获取与未被填充完整的代码区域对应的预设模板代码以辅助生成测试用例,从而减少生成测试用例失败的情况。
在本实施例中,当设置测试框架时,会为该测试框架的配置区域设置对应的配置模板信息,并为该测试框架的各个代码区域设置对应的模板代码,以便当用户端上传的测试脚本存在信息缺失的情况下,也可以根据预设的信息形成测试用例,从而防止测试中断。
筛选模块203,用于从生成的测试用例中筛选出与所述测试场景相关联的目标测试用例。
具体的,筛选模块203,用于:
确定出与所述测试场景对应的场景识别信息;
依次判断生成的每个测试用例的配置信息中是否包含所述场景识别信息,若是,则设置为目标测试用例。
进一步的,筛选模块203,具体用于:
从每个测试用例的配置信息中解析出文件名称、存储路径、所属类信息和所属模块信息;
针对一个测试用例,判断与所述测试用例对应的文件名称、存储路径、所属类信息或所属模块信息中是否包含所述场景识别信息;
若是,则将所述测试用例设置为目标测试用例。
在本实施例中,只要测试用例对应的所属类信息、所属模块信息、文件名称或存储路径中任意一种信息包含所述场景识别信息,即可将该测试用例设置为目标测试用例。例如,在登录测试场景中,若任一测试用例的文件名称、存储路径、所属类信息、所属模块信息中包含场景关键词login,则将该测试用例设置为与登录测试场景关联的目标测试用例。
需要说明的是,由于在用户端上传的测试脚本中包含配置信息,所以当根据测试脚本和测试框架生成测试用例时,测试脚本中的配置信息会继承到测试用例中,因此,在每个测试用例中也会具有以下:所属类信息、所属模块信息、文件名称、存储路径配置信息。
测试模块204,用于通过所述目标测试用例对所述测试对象进行测试,以判断所述测试对象是否具有与所述测试场景对应的功能。
在实际应用中,所述测试指令也可包括多个测试场景,可从生成的所有测试用例中分别确定出与每个测试场景关联的目标测试用例,并分别根据每个测试场景关联的目标测试用例同时进行多个场景的场景测试。
结果模块205,用于获取测试结果,并将所述测试结果发送至所述用户端。
具体的,结果模块205,用于:
针对一个测试用例,判断所述测试用例的真实测试结果是否与所述测试用例对应的预设测试结果一致,若是,则判定所述测试用例测试成功,若否,则判定所述测试用例测试失败;
根据测试成功的目标测试用例的数量统计出测试成功率,并将所述测试成功率发送至所述用户端。
在本实施例中,测试平台将测试脚本统一收集并解析,基于解析后的结果利用与测试脚本对应的测试框架生成测试用例,从而将该测试用例应用于所述用户端创建的测试场景中以进行场景测试,最后将测试结果发送至用户端以进行功能展示,与现有技术相比,达到了一键上传测试脚本,统一解析生成测试用例,对测试用例进行不同功能测试的效果。
实施例三
本实施例还提供一种计算机设备,如可以执行程序的智能手机、平板电脑、笔记本电脑、台式计算机、机架式服务器、刀片式服务器、塔式服务器或机柜式服务器(包括独立的服务器,或者多个服务器所组成的服务器集群)等。如图3所示,本实施例的计算机设备30至少包括但不限于:可通过系统总线相互通信连接的存储器301、处理器302。需要指出的是,图3仅示出了具有组件301-302的计算机设备30,但是应理解的是,并不要求实施所有示出的组件,可以替代的实施更多或者更少的组件。
本实施例中,存储器301(即可读存储介质)包括闪存、硬盘、多媒体卡、卡型存储器(例如,SD或DX存储器等)、随机访问存储器(RAM)、静态随机访问存储器(SRAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、可编程只读存储器(PROM)、磁性存储器、磁盘、光盘等。在一些实施例中,存储器301可以是计算机设备30的内部存储单元,例如该计算机设备30的硬盘或内存。在另一些实施例中,存储器301也可以是计算机设备30的外部存储设备,例如该计算机设备30上配备的插接式硬盘,智能存储卡(Smart Media Card,SMC),安全数字(Secure Digital,SD)卡,闪存卡(Flash Card)等。当然,存储器301还可以既包括计算机设备30的内部存储单元也包括其外部存储设备。在本实施例中,存储器301通常用于存储安装于计算机设备30的操作系统和各类应用软件,例如实施例二的基于场景的测试方法的装置的程序代码等。此外,存储器301还可以用于暂时地存储已经输出或者将要输出的各类数据。
处理器302在一些实施例中可以是中央处理器(Central Processing Unit,CPU)、控制器、微控制器、微处理器、或其他数据处理芯片。该处理器302通常用于控制计算机设备30的总体操作。
具体的,在本实施例中,处理器302用于执行存储器301中存储的基于场景的测试方法的程序,所述基于场景的测试方法的程序被执行时实现如下步骤:
接收用户端发送的测试指令,其中,所述测试指令包括:测试脚本、测试对象和测试场景;
从预设的框架库中查找到与所述测试脚本相匹配的测试框架,并根据所述测试框架和所述测试脚本生成测试用例;
从生成的测试用例中筛选出与所述测试场景相关联的目标测试用例;
通过所述目标测试用例对所述测试对象进行测试,以判断所述测试对象是否具有与所述测试场景对应的功能;
获取测试结果,并将所述测试结果发送至所述用户端。
上述方法步骤的具体实施例过程可参见第一实施例,本实施例在此不再重复赘述。
实施例四
本实施例还提供一种计算机可读存储介质,如闪存、硬盘、多媒体卡、卡型存储器(例如,SD或DX存储器等)、随机访问存储器(RAM)、静态随机访问存储器(SRAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、可编程只读存储器(PROM)、磁性存储器、磁盘、光盘、服务器、App应用商城等等,其上存储有计算机程序,所述计算机程序被处理器执行时实现如下方法步骤:
接收用户端发送的测试指令,其中,所述测试指令包括:测试脚本、测试对象和测试场景;
从预设的框架库中查找到与所述测试脚本相匹配的测试框架,并根据所述测试框架和所述测试脚本生成测试用例;
从生成的测试用例中筛选出与所述测试场景相关联的目标测试用例;
通过所述目标测试用例对所述测试对象进行测试,以判断所述测试对象是否具有与所述测试场景对应的功能;
获取测试结果,并将所述测试结果发送至所述用户端。
上述方法步骤的具体实施例过程可参见第一实施例,本实施例在此不再重复赘述。
需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者装置不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者装置所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、方法、物品或者装置中还存在另外的相同要素。
上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。
以上仅为本发明的优选实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。
Claims (10)
1.一种基于场景的测试方法,其特征在于,所述方法包括:
接收用户端发送的测试指令,其中,所述测试指令包括:测试脚本、测试对象和测试场景;
从预设的框架库中查找到与所述测试脚本相匹配的测试框架,并根据所述测试框架和所述测试脚本生成测试用例;
从生成的测试用例中筛选出与所述测试场景相关联的目标测试用例;
通过所述目标测试用例对所述测试对象进行测试,以判断所述测试对象是否具有与所述测试场景对应的功能;
获取测试结果,并将所述测试结果发送至所述用户端。
2.根据权利要求1所述基于场景的测试方法,其特征在于,在所述接收用户端发送的测试指令之后,所述方法还包括:
判断所述测试脚本的文件类型是否为预设文件类型,若否,则向所述用户端发送测试失败信息;和/或,
判断所述测试脚本的存储路径是否为预设存储路径,若否,则向所述用户端发送测试失败信息。
3.根据权利要求1所述基于场景的测试方法,其特征在于,所述根据所述测试框架和所述测试脚本生成测试用例,包括:
从所述测试脚本中解析出测试配置信息和代码片段;
将所述测试配置信息填充到所述测试框架中的配置区域,并将各个代码片段分别填充到所述测试框架中对应的代码区域,以生成所述测试用例。
4.根据权利要求3所述基于场景的测试方法,其特征在于,在所述根据所述测试框架和所述测试脚本生成测试用例之后,所述方法还包括:
判断所述测试框架中的配置区域和各个代码区域是否均被填充完整,若否,则向所述用户端发送测试失败信息。
5.根据权利要求3所述基于场景的测试方法,其特征在于,所述从生成的测试用例中筛选出与所述测试场景相关联的目标测试用例,包括:
确定出与所述测试场景对应的场景识别信息;
依次判断生成的每个测试用例的配置信息中是否包含所述场景识别信息,若是,则设置为目标测试用例。
6.根据权利要求1所述基于场景的测试方法,其特征在于,所述获取测试结果,并将所述测试结果发送至所述用户端,包括:
针对一个测试用例,判断所述测试用例的真实测试结果是否与所述测试用例对应的预设测试结果一致,若是,则判定所述测试用例测试成功,若否,则判定所述测试用例测试失败;
根据测试成功的目标测试用例的数量统计出测试成功率,并将所述测试成功率发送至所述用户端。
7.一种基于场景的测试方法的装置,其特征在于,所述装置包括:
接收模块,用于接收用户端发送的测试指令,其中,所述测试指令包括:测试脚本、测试对象和测试场景;
生成模块,用于从预设的框架库中查找到与所述测试脚本相匹配的测试框架,并根据所述测试框架和所述测试脚本生成测试用例;
筛选模块,用于从生成的测试用例中筛选出与所述测试场景相关联的目标测试用例;
测试模块,用于通过所述目标测试用例对所述测试对象进行测试,以判断所述测试对象是否具有与所述测试场景对应的功能;
结果模块,用于获取测试结果,并将所述测试结果发送至所述用户端。
8.根据权利要求7所述基于场景的测试装置,其特征在于,所述接收模块,还用于:
判断所述测试脚本的文件类型是否为预设文件类型,若否,则向所述用户端发送测试失败信息;和/或,判断所述测试脚本的存储路径是否为预设存储路径,若否,则向所述用户端发送测试失败信息。
9.一种计算机设备,所述计算机设备包括:存储器、处理器以及存储在所述存储器上并可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1至6任一项所述方法的步骤。
10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至6任一项所述方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110724912.3A CN113377667B (zh) | 2021-06-29 | 2021-06-29 | 一种基于场景的测试方法、装置、计算机设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110724912.3A CN113377667B (zh) | 2021-06-29 | 2021-06-29 | 一种基于场景的测试方法、装置、计算机设备及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113377667A true CN113377667A (zh) | 2021-09-10 |
CN113377667B CN113377667B (zh) | 2024-05-10 |
Family
ID=77579893
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110724912.3A Active CN113377667B (zh) | 2021-06-29 | 2021-06-29 | 一种基于场景的测试方法、装置、计算机设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113377667B (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114817079A (zh) * | 2022-06-30 | 2022-07-29 | 云账户技术(天津)有限公司 | 软件稳定性的测试方法、装置、电子设备及存储介质 |
CN115687164A (zh) * | 2023-01-05 | 2023-02-03 | 中汽智联技术有限公司 | 测试用例泛化筛选方法、设备和存储介质 |
CN116991750A (zh) * | 2023-09-28 | 2023-11-03 | 北京索云科技股份有限公司 | 利用多线程和分布式代理实现大并发模拟的压力测试方法 |
Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109446099A (zh) * | 2018-11-09 | 2019-03-08 | 贵州医渡云技术有限公司 | 自动化测试用例生成方法、装置、介质及电子设备 |
CN109726132A (zh) * | 2019-01-03 | 2019-05-07 | 京东方科技集团股份有限公司 | 一种软件测试方法及软件测试自动化管理系统 |
CN110597730A (zh) * | 2019-09-20 | 2019-12-20 | 中国工商银行股份有限公司 | 基于场景法的自动化测试用例生成方法及系统 |
CN110851356A (zh) * | 2019-10-30 | 2020-02-28 | 河海大学 | 一种基于Selenium的Web应用自动化测试框架及其构建方法、系统 |
CN111124911A (zh) * | 2019-12-20 | 2020-05-08 | 苏州浪潮智能科技有限公司 | 一种自动化测试方法、装置、设备及可读存储介质 |
CN111209185A (zh) * | 2019-12-23 | 2020-05-29 | 厦门市美亚柏科信息股份有限公司 | 基于关键词的自动化测试方法及计算机可读存储介质 |
CN111400181A (zh) * | 2020-03-13 | 2020-07-10 | 北京金山云网络技术有限公司 | 对象测试方法、装置和服务器 |
CN112597020A (zh) * | 2020-12-24 | 2021-04-02 | 平安普惠企业管理有限公司 | 接口测试方法、装置、计算机设备及存储介质 |
CN112965907A (zh) * | 2021-03-11 | 2021-06-15 | 南京爱奇艺智能科技有限公司 | Vr app自动化测试方法及装置 |
-
2021
- 2021-06-29 CN CN202110724912.3A patent/CN113377667B/zh active Active
Patent Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109446099A (zh) * | 2018-11-09 | 2019-03-08 | 贵州医渡云技术有限公司 | 自动化测试用例生成方法、装置、介质及电子设备 |
CN109726132A (zh) * | 2019-01-03 | 2019-05-07 | 京东方科技集团股份有限公司 | 一种软件测试方法及软件测试自动化管理系统 |
CN110597730A (zh) * | 2019-09-20 | 2019-12-20 | 中国工商银行股份有限公司 | 基于场景法的自动化测试用例生成方法及系统 |
CN110851356A (zh) * | 2019-10-30 | 2020-02-28 | 河海大学 | 一种基于Selenium的Web应用自动化测试框架及其构建方法、系统 |
CN111124911A (zh) * | 2019-12-20 | 2020-05-08 | 苏州浪潮智能科技有限公司 | 一种自动化测试方法、装置、设备及可读存储介质 |
CN111209185A (zh) * | 2019-12-23 | 2020-05-29 | 厦门市美亚柏科信息股份有限公司 | 基于关键词的自动化测试方法及计算机可读存储介质 |
CN111400181A (zh) * | 2020-03-13 | 2020-07-10 | 北京金山云网络技术有限公司 | 对象测试方法、装置和服务器 |
CN112597020A (zh) * | 2020-12-24 | 2021-04-02 | 平安普惠企业管理有限公司 | 接口测试方法、装置、计算机设备及存储介质 |
CN112965907A (zh) * | 2021-03-11 | 2021-06-15 | 南京爱奇艺智能科技有限公司 | Vr app自动化测试方法及装置 |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114817079A (zh) * | 2022-06-30 | 2022-07-29 | 云账户技术(天津)有限公司 | 软件稳定性的测试方法、装置、电子设备及存储介质 |
CN115687164A (zh) * | 2023-01-05 | 2023-02-03 | 中汽智联技术有限公司 | 测试用例泛化筛选方法、设备和存储介质 |
CN116991750A (zh) * | 2023-09-28 | 2023-11-03 | 北京索云科技股份有限公司 | 利用多线程和分布式代理实现大并发模拟的压力测试方法 |
CN116991750B (zh) * | 2023-09-28 | 2023-12-22 | 北京索云科技股份有限公司 | 利用多线程和分布式代理实现大并发模拟的压力测试方法 |
Also Published As
Publication number | Publication date |
---|---|
CN113377667B (zh) | 2024-05-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN113377667B (zh) | 一种基于场景的测试方法、装置、计算机设备及存储介质 | |
CN107908541B (zh) | 接口测试方法、装置、计算机设备及存储介质 | |
US10698797B2 (en) | Mobile application program testing method, server, terminal, and storage medium | |
CN110554962A (zh) | 回归测试的流程覆盖方法、服务器及计算机可读存储介质 | |
CN110704304A (zh) | 一种应用程序测试方法、装置、存储介质和服务器 | |
CN110647471A (zh) | 接口测试用例生成方法、电子装置及存储介质 | |
CN111045927A (zh) | 性能测试评估方法、装置、计算机设备及可读存储介质 | |
CN110727575B (zh) | 一种信息处理方法、系统、装置、以及存储介质 | |
CN111258913A (zh) | 算法自动测试方法、装置、计算机系统及可读存储介质 | |
CN111459495A (zh) | 单元测试代码文件生成方法、电子装置及存储介质 | |
CN114546738A (zh) | 服务器通用测试方法、系统、终端及存储介质 | |
US20110016454A1 (en) | Method and system for testing an order management system | |
CN113448862A (zh) | 软件版本测试方法、装置及计算机设备 | |
CN109657475A (zh) | 代码漏洞排查方法、装置、设备及存储介质 | |
CN111367531B (zh) | 代码处理方法及装置 | |
CN111538542B (zh) | 一种系统配置方法及相关装置 | |
CN112905451A (zh) | 应用程序的自动化测试方法及装置 | |
CN116245074A (zh) | 芯片验证方法、设备及存储介质 | |
CN117370203A (zh) | 自动化测试方法、系统、电子设备及存储介质 | |
CN117493188A (zh) | 接口测试方法及装置、电子设备及存储介质 | |
CN111078529B (zh) | 客户端写入模块测试方法、装置、电子设备 | |
CN112084108A (zh) | 一种测试脚本生成方法、装置及相关组件 | |
CN112286821A (zh) | Html5页面兼容性的测试方法、装置、设备及存储介质 | |
CN116599881A (zh) | 云平台租户建模测试的方法、装置、设备及存储介质 | |
CN111159028A (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 |