CN111078580A - 一种测试用例管理方法、装置、存储介质及电子设备 - Google Patents
一种测试用例管理方法、装置、存储介质及电子设备 Download PDFInfo
- Publication number
- CN111078580A CN111078580A CN201911422865.6A CN201911422865A CN111078580A CN 111078580 A CN111078580 A CN 111078580A CN 201911422865 A CN201911422865 A CN 201911422865A CN 111078580 A CN111078580 A CN 111078580A
- Authority
- CN
- China
- Prior art keywords
- test
- script
- test case
- visual interface
- plan
- 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
- 238000012360 testing method Methods 0.000 title claims abstract description 307
- 238000007726 management method Methods 0.000 title claims abstract description 49
- 238000013515 script Methods 0.000 claims abstract description 178
- 230000000007 visual effect Effects 0.000 claims abstract description 85
- 238000000034 method Methods 0.000 claims abstract description 64
- 230000001960 triggered effect Effects 0.000 claims description 24
- 238000012545 processing Methods 0.000 claims description 12
- 238000004590 computer program Methods 0.000 claims description 10
- 238000012544 monitoring process Methods 0.000 claims description 6
- 230000007547 defect Effects 0.000 abstract description 2
- 238000013522 software testing Methods 0.000 abstract 1
- 238000004891 communication Methods 0.000 description 8
- 238000010586 diagram Methods 0.000 description 6
- 230000008569 process Effects 0.000 description 6
- 230000008859 change Effects 0.000 description 5
- 230000000694 effects Effects 0.000 description 4
- 230000008878 coupling Effects 0.000 description 3
- 238000010168 coupling process Methods 0.000 description 3
- 238000005859 coupling reaction Methods 0.000 description 3
- 230000006870 function Effects 0.000 description 3
- 230000001360 synchronised effect Effects 0.000 description 3
- 238000012800 visualization Methods 0.000 description 3
- 230000004048 modification Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 238000000926 separation method Methods 0.000 description 2
- 240000008042 Zea mays Species 0.000 description 1
- 235000005824 Zea mays ssp. parviglumis Nutrition 0.000 description 1
- 235000002017 Zea mays subsp mays Nutrition 0.000 description 1
- 235000005822 corn Nutrition 0.000 description 1
- 238000012217 deletion Methods 0.000 description 1
- 230000037430 deletion Effects 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 238000000605 extraction Methods 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 238000010295 mobile communication Methods 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 230000000717 retained effect Effects 0.000 description 1
- 239000011800 void material 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/368—Test management for test version control, e.g. updating test cases to a new software version
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
技术领域
本发明涉及目标检测技术领域,具体而言,涉及一种测试用例管理方法、装置、存储介质及电子设备。
背景技术
现有技术中,测试用例管理一般以脚本文件(其中包含测试用例)为单位,管理工具未对脚本内容进行解析,导致用户在不打开脚本文件查看其具体内容的情况下,并不能得知脚本文件中测试用例的具体情况,很有可能导致测试用例重复编写等问题。
发明内容
本申请实施例的目的在于提供一种测试用例管理方法、装置、存储介质及电子设备,以改善上述技术问题。
为实现上述目的,本申请提供如下技术方案:
第一方面,本申请实施例提供一种测试用例管理方法,包括:根据预配置的脚本存储信息从脚本仓库同步脚本文件;解析所述脚本文件中包含的测试用例,并将解析出的所述测试用例在可视化界面中展示。
上述方法可以解析脚本文件中的测试用例并将其在可视化界面中展示,因而是一种以测试用例为最小单位的用例管理方式,同时借助于可视化界面直观、便于操作的特点,有效避免了以脚本文件为最小单位进行用例管理带来的弊端(例如,导致测试用例重复编写等),实现了对测试用例的精细化、高效管理。
在第一方面的一种实现方式中,所述脚本存储信息中包括脚本同步模式,所述根据预配置的脚本存储信息从脚本仓库同步脚本文件,包括:若所述脚本同步模式为自动同步,则定期根据所述脚本存储信息从脚本仓库同步脚本文件;若所述脚本同步模式为手动同步,则在监测到所述可视化界面上触发的脚本同步操作时,根据所述脚本存储信息从脚本仓库同步脚本文件。
脚本文件的同步方式非常灵活,用户可以根据需求自由配置。
在第一方面的一种实现方式中,所述脚本文件为Junit脚本,所述解析所述脚本文件中包含的测试用例,并将解析出的所述测试用例在可视化界面中展示,包括:解析所述脚本文件,将所述脚本文件中包含@Test注解或@org.junit.Test注解的java方法确定为测试用例的方法;获取所述测试用例的方法对应的JavaDoc,并从所述JavaDoc中解析出所述测试用例的标题以及内容说明;将所述测试用例的标题以及内容说明在可视化界面中展示。
用户在Junit脚本中编写测试用例时,可以在java方法前添加@Test注解或@org.junit.Test注解,表明该方法是一个测试用例的方法。同时,还可以在注解前添加注释,注释中可以包含对测试用例的描述信息,例如测试用例的标题以及内容说明。在测试用例解析时,通过获取测试用例的方法对应的JavaDoc便可以得到注释内容,并进一步从中解析出测试用例的描述信息。
在第一方面的一种实现方式中,所述从所述JavaDoc中解析出所述测试用例的标题以及内容说明,包括:从所述JavaDoc中解析出以第一预设字串标注的文本作为所述测试用例的标题,以及,从所述JavaDoc中解析出以第二预设字串标注的文本作为所述测试用例的内容说明;其中,所述第一预设字串以及所述第二预设字串均以一预设的特殊字符开头。
第一预设字串和第二预设字串采用特殊字符开头主要是为了方便信息识别提取,例如,该特殊字符可以是@,第一预设字串可以是@title,第二预设字串可以是@content。
在第一方面的一种实现方式中,在所述解析所述脚本文件中包含的测试用例之后,所述方法还包括:将解析出的所述测试用例在数据库中记录。
脚本文件中的每个测试用例都可以在数据库中形成一条对应的记录,该记录可以包括测试用例的标题,测试用例的内容说明,测试用例的方法名称,测试用例的类名称等字段,可视化界面做测试用例的展现可以基于数据库中记录的内容进行。
在第一方面的一种实现方式中,在所述将解析出的所述测试用例在可视化界面中展示之后,所述方法还包括:在监测到所述可视化界面上触发的测试计划创建操作时,根据该操作中指定的计划配置信息生成测试计划,并将所述测试计划在所述可视化界面上展示;在监测到所述可视化界面上触发的用例添加操作时,将该操作中指定的测试用例添加至所述测试计划中,并将所述测试计划中当前包含的测试用例在所述可视化界面上展示;在监测到所述可视化界面上触发的执行测试操作时,执行所述测试计划。
在这种实现方式中,借助于可视化界面实现了测试执行人员与代码的分离,执行人员无需查看或修改测试用例源码,也无需编写测试脚本,只需在可视化界面中通过可视化操作创建测试计划、编辑测试计划、执行测试计划,也不用将脚本文件拉取到终端设备上执行,因此可以简单、高效地完成测试任务。同时,还可以降低对执行人员技术门槛的要求。
此外,由于测试用例之间相互独立,故各测试用例在测试计划中可以自由组合、自由排序,形成的测试策略灵活性非常高,可以有效地满足不同的测试需求。
在第一方面的一种实现方式中,所述方法还包括:在监测到所述可视化界面上触发的执行顺序调整操作时,根据该操作调整所述测试计划中测试用例的执行顺序,并将所述测试计划中包含的测试用例按照新的执行顺序在所述可视化界面上展示。
在测试计划中,测试用例的执行可以具有一定先后顺序,该顺序可以在可视化界面上通过可视化操作进行调整,其操作过程直观方便,可以快速响应测试需求的变化。
在第一方面的一种实现方式中,所述方法还包括:在监测到所述可视化界面上触发的用例删除操作时,将该操作中指定的测试用例从所述测试计划中删除,并将所述测试计划中当前包含的测试用例在所述可视化界面上展示。
对于测试计划中不再需要执行的测试用例,可以在可视化界面上通过可视化操作将其从测试计划中移除,其操作过程直观方便,可以快速响应测试需求的变化。
第二方面,本申请实施例提供一种测试用例管理装置,包括:脚本同步模块,用于根据预配置的脚本存储信息从脚本仓库同步脚本文件;脚本处理模块,用于解析所述脚本文件中包含的测试用例,并将解析出的所述测试用例在可视化界面中展示。
第三方面,本申请实施例提供一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序指令,所述计算机程序指令被处理器读取并运行时,执行第一方面或第一方面的任意一种可能的实现方式提供的方法。
第四方面,本申请实施例提供一种电子设备,包括:存储器以及处理器,所述存储器中存储有计算机程序指令,所述计算机程序指令被所述处理器读取并运行时,执行第一方面或第一方面的任意一种可能的实现方式提供的方法。
附图说明
为了更清楚地说明本申请实施例的技术方案,下面将对本申请实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本申请的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。
图1示出了本申请实施例提供的一种测试用例管理方法的流程图;
图2示出了本申请实施例提供的脚本文件中的测试用例的一种展示效果图;
图3示出了本申请实施例提供的测试计划中的测试用例的一种展示效果图;
图4示出了本申请实施例提供的一种测试用例管理装置的功能模块图;
图5示出了本申请实施例提供的一种电子设备的示意图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行描述。应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
本申请实施例旨在提供一种以测试用例为最小管理单元的测试用例管理方法,该方法以可视化界面为依托,能够实现对测试用例的精细化、高效管理。
图1示出了本申请实施例提供的一种测试用例管理方法的流程图。该方法可以由一电子设备执行,该电子设备的具体结构可以参考对图5的描述。作为一种比较常见的实现方式,该电子设备可以为服务器,下面阐述时也以服务器为例进行说明,但这不应当视为对本申请保护范围的限制。参照图1,测试用例管理方法包括:
步骤S100:服务器根据预配置的脚本存储信息从脚本仓库同步脚本文件。
在本申请的方案中,脚本文件是指包含测试用例的文件,脚本仓库用于对脚本文件进行存储和管理(例如,版本管理),下面先介绍脚本仓库中的脚本文件的一种可能的来源:
用户可以在自己使用的终端设备上编写脚本文件,编写时可以按照一定的模板,便于后续步骤中对脚本进行解析。例如,对于Junit脚本(该类脚本是一个java文件),可以按照下面的模板编写:
脚本文件根目录:src\test\java(java项目下的路径)
脚本文件命名规则:****Test.java(文件命名规范以Test.java结尾)
测试用例规则:(一个测试用例)
/**
*@title这里添加测试用例的标题
*@content这里添加测试用例的内容说明
*<br>1.内容说明a
*<br>2.内容说明b
*<br>3.内容说明c
*/
@Test
public void testLoginByCode(){…}
从上面的模板可以看出,在Junit脚本中,一个测试用例包括三部分,分别是注释(/*和*/之间的部分)、注解(@Test)以及方法(testLoginByCode),下面分别予以介绍:
(1)测试用例的注释
注释内容对于Java代码的执行无影响,但在本申请的方案中可以将一些对测试用例的描述信息添加到注释中,在步骤S110中这些描述信息会被解析。在上面的例子中示出了测试用例的标题与测试用例的内容说明两项描述信息,但也不排除包含其他信息项,不过为简单起见,在后文中不妨以测试用例的描述信息仅包含标题和内容说明两项信息为例。
为便于在步骤S110中解析测试用例的标题和内容说明,可以用两个预设的字串对这两项信息的起始位置进行标注,不妨称为第一预设字串和第二预设字串,在上面的例子中,这两个字串分别是@title以及@content。第一预设字串和第二预设字串具体是什么字串不限定,不过在一种实现方式中可以采用“预设的特殊字符+普通字串”的方式构成,该特殊字符可以是@、#、$、!等文字描述中出现频率较少的字符,普通字串则可以是英文字母、阿拉伯数字等字符组合而成的字串。
(2)用例的注解
注解是Junit中的一种规范,使用方式是“@+注解名”,在上面的例子中,@Test注解表明其后的java方法是一个测试用例的方法。可选的,@Test也可以用@org.junit.Test替换。
(3)用例的方法
在Junit脚本中,测试用例的方法是java方法,该方法的代码内容即测试用例要执行的具体测试逻辑。
用户编写完脚本后,可以自行将脚本提交到脚本仓库进行保存,其中,脚本仓库可以是,但不限于Git仓库、SVN仓库等,后文主要以Git仓库为例进行说明。
用户提交完脚本后,可以在一个可视化界面上填写脚本存储信息并提交给服务器,当然也不排除脚本存储信息通过其他方式提交,例如通过配置文件的方式。脚本存储信息的内容至少应包括脚本文件在脚本仓库中的存储位置,以便服务器可以从脚本仓库中同步到脚本文件。以脚本仓库是Git仓库为例,脚本存储信息可以包括Git地址、Git分支、Git用户名、Git密码等内容,前两项用于指明脚本文件在Git仓库中的存储位置,后两项用于服务器获得访问Git仓库的权限。上述可视化界面可以是浏览器页面(采用B/S架构),也可以是客户端界面(采用C/S架构),具体不限定。另外,还需要指出,后文还有多处会出现可视化界面,这些可视化界面用于实现不同的功能,既可以是集成在某个测试用例管理系统中的多个页面,也可以是多项不同的服务提供的页面,本申请对此不作限定,都统一地将其称为可视化界面。
用户填写的脚本存储信息中还可以包括脚本同步模式,根据脚本同步模式,服务器在从脚本仓库同步脚本文件时将会采取不同的操作:
其一,自动同步模式。在该模式下,服务器定期根据脚本存储信息从脚本仓库同步脚本文件,至于间隔的周期可以由用户指定也可以采用默认值。
其二,手动同步模式。在该模式下,需要用户在可视化界面上触发脚本同步操作(例如,点击某个按钮),服务器在监测到该脚本同步操作时,根据脚本存储信息从脚本仓库同步脚本文件。
总之,脚本文件的同步方式非常灵活,用户可以根据需求自由配置。当然,也不排除在一些实现方式中,服务器采用某种固定的脚本同步模式,无需用户指定脚本同步模式。
步骤S110:服务器解析脚本文件中包含的测试用例,并将解析出的测试用例在可视化界面中展示。
服务器同步到脚本文件后,可以对脚本文件中的测试用例进行解析,所谓解析测试用例,就是获得测试用例的一些相关信息,包括但不限于测试用例的标题、测试用例的内容说明、测试用例的方法名称,测试用例的类名称等。所谓将解析出的测试用例在可视化界面中展示,就是将解析出的测试用例的相关信息(部分或全部)在可视化界面中展示,从而用户通过浏览可视化界面,便可获知脚本文件中测试用例的具体情况。
图2示出了测试用例在可视化界面中的一种展示效果,在图2中,表格的每一行表示一个测试用例,整个表格就是某个脚本文件中全部的测试用例,上述四项信息以表格中的四个字段的形式进行展示,其中测试用例的内容说明文字量可能比较多,因此可通过单独的页面进行展示(文字“详情”可以表示一个超链接)。可以理解的,图2仅仅是示例,可视化界面也可以采用不同的设计方式。
若脚本文件按照模板编写,解析起来会比较方便,按照编写规则进行相应处理即可。例如,假设脚本文件为Junit脚本,并按照步骤S100中的模板编写,则可利用JDT(也不排除使用其他工具)对其进行解析,具体可以包括如下步骤:
首先,解析脚本文件,将脚本文件中包含@Test注解或@org.junit.Test注解的java方法确定为测试用例的方法;
然后,获取测试用例的方法的名称,以及,该方法所属的java类的名称;
最后,获取测试用例的方法对应的JavaDoc(JavaDoc即注释的内容),并从JavaDoc中解析出测试用例的标题以及内容说明,根据之前的编写规则,测试用例的标题以及内容说明的起始位置分别通过第一预设字串(如@title)以及第二预设字串(如@content)进行标注,只要查找这两个预设字串便可以确定测试用例的标题以及内容说明的起始位置,而两项信息的结束位置则可以通过换行符等确定。
以上仅仅说明了图2中要展示的四项信息的获取过程,对于测试用例的其他相关信息,可以采用类似的方法从脚本文件中解析获得,不再举例。
在一种实现方式中,服务器在解析出脚本文件中包含的测试用例之后,还可以将解析出的测试用例在数据库中记录,这里的记录是指记录测试用例的相关信息,如上面提到的测试用例的标题,测试用例的内容说明,测试用例的方法名称,测试用例的类名称等信息,测试用例的具体代码则可以保留在脚本文件中,无需记录,但根据测试用例的相关信息,比如方法名称和类名称足以定位到脚本文件中的具体代码(从而可以执行测试用例)。可视化界面做测试用例的展示等操作都可以基于数据库中记录内容进行。上面所称的数据库,可以在服务器本地,也可以在其他设备上,但是服务器可以对其进行访问。
简单总结图1中的用例管理方法,该方法可以解析脚本文件中的测试用例并将其在可视化界面中展示,因而是一种以测试用例为最小单位的用例管理方式,同时借助于可视化界面直观、便于操作的特点,有效避免了以脚本文件为最小单位进行用例管理带来的弊端(例如,用户在不查看脚本文件的前提下无法获知其中包含的测试用例,导致测试用例重复编写等问题),实现了对测试用例的精细化、高效管理。
下面再介绍一下如何利用可视化界面执行测试任务,以进一步说明对测试用例的可视化管理。执行测试任务的前提是所需的脚本文件已经被服务器同步,并且其中的用例已经被解析。
步骤A:服务器在监测到可视化界面上触发的测试计划创建操作时,根据该操作中指定的计划配置信息生成测试计划,并将生成的测试计划在可视化界面上展示。
一项测试计划表征一项测试任务,测试计划可以包括测试配置信息,主要是一些与测试有关的参数,如测试计划的执行时间(可用corn表达式描述)、测试计划的类型(可包括回归测试)等。此外,测试计划还可以包含多个设定好测试用例,并且这些测试用例可以具有设定好的执行顺序。
测试计划创建操作可由用户在可视化界面上触发。例如,用户点击某个用于创建测试计划的按钮后,可以弹出某个页面,在该页面中用户可以填写计划配置信息,还可以添加测试计划所需的测试用例(即步骤B,当然也可以暂不添加测试用例,在创建完测试计划后再添加),完成后用户可以点击页面中的保存按钮,作为响应,服务器会为用户创建测试计划。测试计划创建好后,可以在可视化界面上展示,方便用户获知当前有哪些测试计划已被创建。
步骤B:服务器在监测到可视化界面上触发的用例添加操作时,将该操作中指定的测试用例添加至测试计划中,并将测试计划中当前包含的测试用例在可视化界面上展示。
步骤B可以在创建测试计划时就执行,当然也可以在创建好测试计划后再执行。用例添加操作可由用户在可视化界面上触发。例如,参考图3,用户点击“添加”按钮后,可以弹出某个页面,在该页面中可以将已有的(比如,数据库中存储的)测试用例显示出来,供用户添加测试用例,用户选择好测试用例并确认后,选中的测试用例会显示在测试计划下,如图3所示(表格中显示了测试用例的三项信息)。
步骤C:服务器在监测到可视化界面上触发的执行测试操作时,执行测试计划。
执行测试操作可由用户在可视化界面上触发。例如,用户点击某个用于执行测试计划的按钮后,服务器就会按照用户在步骤A、B中针对测试计划所作的配置执行测试计划。
可将制定并执行测试计划的用户称为测试执行人员(简称执行人员),在上面的方案中,借助于可视化界面实现了执行人员与代码的分离,即执行人员无需查看或修改测试用例源码,也无需编写测试脚本,也无需主动拉取脚本文件(因为脚本文件已经同步到服务器上),只需在可视化界面中通过可视化操作创建测试计划、编辑测试计划(包括上面的添加测试用例以及其他操作)、执行测试计划就可以简单、高效地完成测试任务。同时,由于不涉及代码相关的操作,因此该方法对执行人员的技术门槛要求不高,便于普通技术人员甚至非技术人员实施。
此外,由于测试用例之间是相互独立的,故各测试用例在测试计划中可以自由组合、自由设定执行顺序,其灵活性非常高,可以有效地满足不同的测试需求。
测试实践中,由于测试需求可能随时间而变更,特别是对于计划中的测试用例,可能需要进行新增、调整执行顺序、删除等操作,以适应测试需求的变化。关于新增操作在步骤B中已经介绍,下面再简单介绍后两种操作(注意步骤编号并不代表执行顺序)。
步骤D:服务器在监测到可视化界面上触发的执行顺序调整操作时,根据该操作调整测试计划中测试用例的执行顺序,并将测试计划中包含的测试用例按照新的执行顺序在可视化界面上展示。
上面已经提到,在测试计划中,测试用例的执行可以具有一定先后顺序,用户可以在可视化界面上通过可视化操作调整测试用例的执行顺序。例如,参考图3,用户点击某测试用例后面的“↑”符号后,服务器会响应该操作,将该测试用例的执行顺序提前一个位置,而用户点击某测试用例后面的“↓”符号后,服务器会响应该操作,将该测试用例的执行顺序移后一个位置,当然也不排除其他调整执行顺序的操作方式,只是图3未示出而已。调整测试用例的执行顺序后,服务器会刷新可视化界面的显示,测试计划中包含的测试用例将按照调整后的执行顺序在可视化界面上重新展示。不难看出,测试用例的执行顺序调整操作直观方便,从而可以快速响应测试需求的变化。
步骤E:服务器在监测到可视化界面上触发的用例删除操作时,将该操作中指定的测试用例从测试计划中删除,并将测试计划中当前包含的测试用例在可视化界面上展示。
对于测试计划中不再需要执行的测试用例,用户可以在可视化界面上通过可视化操作将其从测试计划中删除。例如,参考图3,用户点击某测试用例后面的“×”符号后,服务器会响应该操作,将该测试用例从测试计划中删除,删除测试用例后,服务器会刷新可视化界面的显示,刷新显示后,在测试计划当前包含的测试用例中已不再包含删除掉的测试用例。不难看出,测试用例的删除操作直观方便,从而可以快速响应测试需求的变化。
图4示出了本申请实施例提供的测试用例管理装置200的功能模块图。参照图4,测试用例管理装置200包括:
脚本同步模块210,用于根据预配置的脚本存储信息从脚本仓库同步脚本文件;
脚本处理模块220,用于解析所述脚本文件中包含的测试用例,并将解析出的所述测试用例在可视化界面中展示。
在测试用例管理装置200的一种实现方式中,所述脚本存储信息中包括脚本同步模式,脚本同步模块210根据预配置的脚本存储信息从脚本仓库同步脚本文件,包括:若所述脚本同步模式为自动同步,则定期根据所述脚本存储信息从脚本仓库同步脚本文件;若所述脚本同步模式为手动同步,则在监测到所述可视化界面上触发的脚本同步操作时,根据所述脚本存储信息从脚本仓库同步脚本文件。
在测试用例管理装置200的一种实现方式中,所述脚本文件为Junit脚本,脚本处理模块220解析所述脚本文件中包含的测试用例,并将解析出的所述测试用例在可视化界面中展示,包括:解析所述脚本文件,将所述脚本文件中包含@Test注解或@org.junit.Test注解的java方法确定为测试用例的方法;获取所述测试用例的方法对应的JavaDoc,并从所述JavaDoc中解析出所述测试用例的标题以及内容说明;将所述测试用例的标题以及内容说明在可视化界面中展示。
在测试用例管理装置200的一种实现方式中,脚本处理模块220从所述JavaDoc中解析出所述测试用例的标题以及内容说明,包括:从所述JavaDoc中解析出以第一预设字串标注的文本作为所述测试用例的标题,以及,从所述JavaDoc中解析出以第二预设字串标注的文本作为所述测试用例的内容说明;其中,所述第一预设字串以及所述第二预设字串均以一预设的特殊字符开头。
在测试用例管理装置200的一种实现方式中,脚本处理模块220还用于:在解析所述脚本文件中包含的测试用例之后,将解析出的所述测试用例在数据库中记录。
在测试用例管理装置200的一种实现方式中,脚本处理模块220还用于:在将解析出的所述测试用例在可视化界面中展示之后,在监测到所述可视化界面上触发的测试计划创建操作时,根据该操作中指定的计划配置信息生成测试计划,并将所述测试计划在所述可视化界面上展示;以及,用于在监测到所述可视化界面上触发的用例添加操作时,将该操作中指定的测试用例添加至所述测试计划中,并将所述测试计划中当前包含的测试用例在所述可视化界面上展示;以及,用于在监测到所述可视化界面上触发的执行测试操作时,执行所述测试计划。
在测试用例管理装置200的一种实现方式中,脚本处理模块220还用于:在监测到所述可视化界面上触发的执行顺序调整操作时,根据该操作调整所述测试计划中测试用例的执行顺序,并将所述测试计划中包含的测试用例按照新的执行顺序在所述可视化界面上展示。
在测试用例管理装置200的一种实现方式中,脚本处理模块220还用于:在监测到所述可视化界面上触发的用例删除操作时,将该操作中指定的测试用例从所述测试计划中删除,并将所述测试计划中当前包含的测试用例在所述可视化界面上展示。
本申请实施例提供的测试用例管理装置200,其实现原理及产生的技术效果在前述方法实施例中已经介绍,为简要描述,装置实施例部分未提及之处,可参考方法施例中相应内容。
图5示出了本申请实施例提供的一种电子设备的示意图。参照图5,电子设备300包括:处理器310、存储器320以及通信接口330,这些组件通过通信总线340和/或其他形式的连接机构(未示出)互连并相互通讯。
其中,存储器320包括一个或多个(图中仅示出一个),其可以是,但不限于,随机存取存储器(Random Access Memory,简称RAM),只读存储器(Read Only Memory,简称ROM),可编程只读存储器(Programmable Read-Only Memory,简称PROM),可擦除只读存储器(Erasable Programmable Read-Only Memory,简称EPROM),电可擦除只读存储器(Electric Erasable Programmable Read-Only Memory,简称EEPROM)等。处理器310以及其他可能的组件可对存储器320进行访问,读和/或写其中的数据。
处理器310包括一个或多个(图中仅示出一个),其可以是一种集成电路芯片,具有信号的处理能力。上述的处理器310可以是通用处理器,包括中央处理器(CentralProcessing Unit,简称CPU)、微控制单元(Micro Controller Unit,简称MCU)、网络处理器(Network Processor,简称NP)或者其他常规处理器;还可以是专用处理器,包括数字信号处理器(Digital Signal Processor,简称DSP)、专用集成电路(Application SpecificIntegrated Circuits,简称ASIC)、现场可编程门阵列(Field Programmable Gate Array,简称FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。
通信接口330包括一个或多个(图中仅示出一个),可以用于和其他设备进行直接或间接地通信,以便进行数据的交互。例如,通信接口330可以是以太网接口;可以是高速网络接口(如Infiniband网络);可以是移动通信网络接口(如3G、4G、5G网络的接口);可以是各类总线接口,例如USB、CAN、I2C、SPI等总线接口;还是可以是具有数据收发功能的其他类型的接口。
在存储器320中可以存储一个或多个计算机程序指令,处理器310可以读取并运行这些计算机程序指令,以实现本申请实施例提供的测试用例管理方法以及其他期望的功能。
可以理解,图5所示的结构仅为示意,电子设备300还可以包括比图5中所示更多或者更少的组件,或者具有与图5所示不同的配置。图5中所示的各组件可以采用硬件、软件或其组合实现。例如,在采用硬件方式实现时,电子设备300可以是PC机、服务器等;在采用软件方式实现时,电子设备300可以是虚拟机、容器等。并且,电子设备300不限于单台设备,也可以是多台设备的组合或者大量设备构成的集群。
本申请实施例还提供一种计算机可读存储介质,该计算机可读存储介质上存储有计算机程序指令,所述计算机程序指令被计算机的处理器读取并运行时,执行本申请实施例提供的测试用例管理方法。例如,计算机可读存储介质可以实现为图5中电子设备300中的存储器320。
在本申请所提供的实施例中,应该理解到,所揭露装置和方法,可以通过其它的方式实现。以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,又例如,多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些通信接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
另外,作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
再者,在本申请各个实施例中的各功能模块可以集成在一起形成一个独立的部分,也可以是各个模块单独存在,也可以两个或两个以上模块集成形成一个独立的部分。
以上所述仅为本申请的实施例而已,并不用于限制本申请的保护范围,对于本领域的技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。
Claims (11)
1.一种测试用例管理方法,其特征在于,包括:
根据预配置的脚本存储信息从脚本仓库同步脚本文件;
解析所述脚本文件中包含的测试用例,并将解析出的所述测试用例在可视化界面中展示。
2.根据权利要求1所述的测试用例管理方法,其特征在于,所述脚本存储信息中包括脚本同步模式,所述根据预配置的脚本存储信息从脚本仓库同步脚本文件,包括:
若所述脚本同步模式为自动同步,则定期根据所述脚本存储信息从脚本仓库同步脚本文件;
若所述脚本同步模式为手动同步,则在监测到所述可视化界面上触发的脚本同步操作时,根据所述脚本存储信息从脚本仓库同步脚本文件。
3.根据权利要求1所述的测试用例管理方法,其特征在于,所述脚本文件为Junit脚本,所述解析所述脚本文件中包含的测试用例,并将解析出的所述测试用例在可视化界面中展示,包括:
解析所述脚本文件,将所述脚本文件中包含@Test注解或@org.junit.Test注解的java方法确定为测试用例的方法;
获取所述测试用例的方法对应的JavaDoc,并从所述JavaDoc中解析出所述测试用例的标题以及内容说明;
将所述测试用例的标题以及内容说明在可视化界面中展示。
4.根据权利要求3所述的测试用例管理方法,其特征在于,所述从所述JavaDoc中解析出所述测试用例的标题以及内容说明,包括:
从所述JavaDoc中解析出以第一预设字串标注的文本作为所述测试用例的标题,以及,从所述JavaDoc中解析出以第二预设字串标注的文本作为所述测试用例的内容说明;
其中,所述第一预设字串以及所述第二预设字串均以一预设的特殊字符开头。
5.根据权利要求1所述的测试用例管理方法,其特征在于,在所述解析所述脚本文件中包含的测试用例之后,所述方法还包括:
将解析出的所述测试用例在数据库中记录。
6.根据权利要求1所述的测试用例管理方法,其特征在于,在所述将解析出的所述测试用例在可视化界面中展示之后,所述方法还包括:
在监测到所述可视化界面上触发的测试计划创建操作时,根据该操作中指定的计划配置信息生成测试计划,并将所述测试计划在所述可视化界面上展示;
在监测到所述可视化界面上触发的用例添加操作时,将该操作中指定的测试用例添加至所述测试计划中,并将所述测试计划中当前包含的测试用例在所述可视化界面上展示;
在监测到所述可视化界面上触发的执行测试操作时,执行所述测试计划。
7.根据权利要求6所述的测试用例管理方法,其特征在于,所述方法还包括:
在监测到所述可视化界面上触发的执行顺序调整操作时,根据该操作调整所述测试计划中测试用例的执行顺序,并将所述测试计划中包含的测试用例按照新的执行顺序在所述可视化界面上展示。
8.根据权利要求6所述的测试用例管理方法,其特征在于,所述方法还包括:
在监测到所述可视化界面上触发的用例删除操作时,将该操作中指定的测试用例从所述测试计划中删除,并将所述测试计划中当前包含的测试用例在所述可视化界面上展示。
9.一种测试用例管理装置,其特征在于,包括:
脚本同步模块,用于根据预配置的脚本存储信息从脚本仓库同步脚本文件;
脚本处理模块,用于解析所述脚本文件中包含的测试用例,并将解析出的所述测试用例在可视化界面中展示。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有计算机程序指令,所述计算机程序指令被处理器读取并运行时,执行如权利要求1-8中任一项所述的方法。
11.一种电子设备,其特征在于,包括:存储器以及处理器,所述存储器中存储有计算机程序指令,所述计算机程序指令被所述处理器读取并运行时,执行如权利要求1-8中任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911422865.6A CN111078580A (zh) | 2019-12-31 | 2019-12-31 | 一种测试用例管理方法、装置、存储介质及电子设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911422865.6A CN111078580A (zh) | 2019-12-31 | 2019-12-31 | 一种测试用例管理方法、装置、存储介质及电子设备 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN111078580A true CN111078580A (zh) | 2020-04-28 |
Family
ID=70321555
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201911422865.6A Pending CN111078580A (zh) | 2019-12-31 | 2019-12-31 | 一种测试用例管理方法、装置、存储介质及电子设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111078580A (zh) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112416751A (zh) * | 2020-10-15 | 2021-02-26 | 北京达佳互联信息技术有限公司 | 接口自动化测试的处理方法、装置及存储介质 |
CN112527650A (zh) * | 2020-12-15 | 2021-03-19 | 西安中朗智控科技有限公司 | 一种测试用例复用方法和复用装置 |
CN113806220A (zh) * | 2021-08-23 | 2021-12-17 | 北京天融信网络安全技术有限公司 | 一种测试脚本的执行方法、系统、终端及存储介质 |
CN116225968A (zh) * | 2023-05-06 | 2023-06-06 | 易方信息科技股份有限公司 | 在线化测试用例脚本文件管理方法、装置、终端以及介质 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105373469A (zh) * | 2014-08-25 | 2016-03-02 | 广东金赋信息科技有限公司 | 一种基于接口的软件自动化测试方法 |
CN106033388A (zh) * | 2015-03-11 | 2016-10-19 | 阿里巴巴集团控股有限公司 | 测试用例库管理方法及系统 |
CN107729251A (zh) * | 2017-10-23 | 2018-02-23 | 中国联合网络通信集团有限公司 | 测试用例管理方法及装置 |
US20180089066A1 (en) * | 2016-09-23 | 2018-03-29 | American Express Travel Related Services Company, Inc. | Software testing management |
-
2019
- 2019-12-31 CN CN201911422865.6A patent/CN111078580A/zh active Pending
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105373469A (zh) * | 2014-08-25 | 2016-03-02 | 广东金赋信息科技有限公司 | 一种基于接口的软件自动化测试方法 |
CN106033388A (zh) * | 2015-03-11 | 2016-10-19 | 阿里巴巴集团控股有限公司 | 测试用例库管理方法及系统 |
US20180089066A1 (en) * | 2016-09-23 | 2018-03-29 | American Express Travel Related Services Company, Inc. | Software testing management |
CN107729251A (zh) * | 2017-10-23 | 2018-02-23 | 中国联合网络通信集团有限公司 | 测试用例管理方法及装置 |
Non-Patent Citations (2)
Title |
---|
WEIXIN_30690833: "二、Junit里的方法与注释", 《HTTPS://BLOG.CSDN.NET/WEIXIN_30690833/ARTICLE/DETAILS/98360193》 * |
阳光温暖了心情: "TestLink学习四:TestLink1.9.13使用说明", 《HTTPS://WWW.CNBLOGS.COM/YANGXIA-TEST/P/4453758.HTML#!COMMENTS》 * |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112416751A (zh) * | 2020-10-15 | 2021-02-26 | 北京达佳互联信息技术有限公司 | 接口自动化测试的处理方法、装置及存储介质 |
CN112527650A (zh) * | 2020-12-15 | 2021-03-19 | 西安中朗智控科技有限公司 | 一种测试用例复用方法和复用装置 |
CN112527650B (zh) * | 2020-12-15 | 2022-02-25 | 西安中朗智控科技有限公司 | 一种测试用例复用方法和复用装置 |
CN113806220A (zh) * | 2021-08-23 | 2021-12-17 | 北京天融信网络安全技术有限公司 | 一种测试脚本的执行方法、系统、终端及存储介质 |
CN116225968A (zh) * | 2023-05-06 | 2023-06-06 | 易方信息科技股份有限公司 | 在线化测试用例脚本文件管理方法、装置、终端以及介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111078580A (zh) | 一种测试用例管理方法、装置、存储介质及电子设备 | |
US10318628B2 (en) | System and method for creation of templates | |
US7673235B2 (en) | Method and apparatus for utilizing an object model to manage document parts for use in an electronic document | |
EP2151773B1 (en) | Synchronous to asynchronous web page conversion | |
US10078709B2 (en) | Managing a display of results of a keyword search on a web page by modifying attributes of a DOM tree structure | |
US9619441B2 (en) | Editing a fragmented document | |
EP1835434A1 (en) | Data processing device and data processing method | |
US9069830B2 (en) | Retrieving data objects | |
US20140180961A1 (en) | Supplemental system for business intelligence systems | |
CN111290956B (zh) | 基于脑图的测试方法、装置、电子设备及存储介质 | |
US7805452B2 (en) | Data processing device and data processing method | |
US20150278190A1 (en) | Web server system, dictionary system, dictionary call method, screen control display method, and demonstration application generation method | |
CN107015903B (zh) | 一种界面测试程序的生成方法、装置及电子设备 | |
US20080250052A1 (en) | Repopulating a database with document content | |
CN112558967A (zh) | 页面自动生成方法、装置、电子设备和存储介质 | |
US8453053B2 (en) | Rapid software report development tool with auto database handling and menu tool-bar plug-in for application report access | |
US8397114B2 (en) | Automated regression testing intermediary | |
US20060107220A1 (en) | Method and system for displaying an annotated file | |
US20230195825A1 (en) | Browser extension with automation testing support | |
US11010140B2 (en) | Integration of workflow and logical data objects using visual programming | |
US8589426B1 (en) | Simultaneous file editor | |
CN111221610B (zh) | 一种页面元素采集方法和装置 | |
US20080147957A1 (en) | Archiver Device, Data Acquisition Device, and Data Acquisition Method | |
CN107085578B (zh) | 一种网页编辑方法和装置 | |
US20240176728A1 (en) | Plug and play language acceptance testing |
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 | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20200428 |