CN103353859A - 一种基于xml的测试用例复用方法 - Google Patents
一种基于xml的测试用例复用方法 Download PDFInfo
- Publication number
- CN103353859A CN103353859A CN2013103173578A CN201310317357A CN103353859A CN 103353859 A CN103353859 A CN 103353859A CN 2013103173578 A CN2013103173578 A CN 2013103173578A CN 201310317357 A CN201310317357 A CN 201310317357A CN 103353859 A CN103353859 A CN 103353859A
- Authority
- CN
- China
- Prior art keywords
- test case
- xml
- test
- reuse
- dtd
- 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
Landscapes
- Debugging And Monitoring (AREA)
- Document Processing Apparatus (AREA)
Abstract
本发明提供一种基于XML的测试用例复用方法,其具体复用过程为:测试人员根据被测试软件的功能特点,定义需要的测试用例类型;根据所定义的测试用例从测试用例库中查找满足要寻求的测试用例;如果测试用例库中可以找到需要的测试用例,则从中提取出可复用的测试用例,程序结束;如果测试用例库中无法找到需要的测试用例,则设计此测试用例并用XML形式表示,验证其正确性,如果正确,添加到测试用例库中中,以便以后进行复用,程序结束。该一种基于XML的测试用例复用方法和现有技术相比,不但解决了测试用例格式的无规则性,而且给出了测试用例统一的描述形式,更好的让测试人员进行复用,让广大的测试资源得到广泛的利用,提高测试效率实用性强,易于推广。
Description
技术领域
本发明涉及自动化测试技术领域,具体的说是一种方便测试用例重复使用、基于XML的测试用例复用方法。
背景技术
测试过程可以分成测试用例设计,测试用例执行,测试结果分析。测试用例设计在其中是最重要的一块,其目的在于确定一组最有可能去发现某个或者某类类错的测试数据,实现测试数据对某个功能的测试.然而由于软件测试用例设计在很大程度上依赖于测试人员的个人经验,测试系统的多样性和复杂性,测试用例的设计和实现对被测对象的需求,设计和环境要求,包含太多的具体细节,测试用例编写的格式也随编写人员的变化不用而不同,给测试带来很大的盲目性,导致软件后期的维护费用在软件成本中占有较大的比重。而且,信息量越丰富,生成和维护的代价就越高,管理和多个测试用例的繁琐成都也就越高。描述形式不同,会给测试用例管理带来麻烦。传统的测试用例都是用word或者excel来编写,这样很难管理,如果把几千个文档文件放在一个共享文件夹里,即便以子目录方式管理,但是每次查找一个特定的测试用例的时候,也要花费很多时间和精力。
XML技术是一项将类型和结构置于信息上层的技术,为提高软件的复用能力提供了统一的描述框架规范。一个XML文档就是一组具有一个或者多个命名属性的结构信息项集合。它为一个文档内的描述信息提供了一个标准的格式,并且为文档的结构描述制定了标准的描述方法。XML对格式有着很严格的要求,文档的格式非常规范,允许我们自行定义标签,它为要描述的各种类型的文档建立一个层次模型,规定有不同标记符的元素在文档中以一种适合逻辑的,可预测的结构表示出来。因此只要定义了一个共同的格式或者描述文档,应用程序都可以访问符合此规范的描述性文档,并将文档的内容以各种灵活的形式(如图形、文本、报表、甚至动画等)表现出来。
由于XML存在这些特性,可以设想,如果用XML定义一个开放的测试用例表示形式,所有的测试用例都遵循这个描述规范,那么就降低了测试用例的维护难度,测试用例的复用变得成为可能了,利用XML技术来描述测试用例不但简洁易懂,而且结构清晰、易于维护。鉴于此,现提供一种基于XML的测试用例复用方法。
发明内容
本发明的技术任务是解决现有技术的不足,提供一种基于XML的测试用例复用方法。
本发明的技术方案是按以下方式实现的,该一种基于XML的测试用例复用方法,其具体复用过程为:
一、测试人员根据被测试软件的功能特点,定义需要的测试用例类型;
二、根据所定义的测试用例从测试用例库中查找满足要寻求的测试用例;
三、如果测试用例库中可以找到需要的测试用例,则从中提取出可复用的测试用例,程序结束;
四、如果测试用例库中无法找到需要的测试用例,则设计此测试用例并用XML形式表示,验证其正确性,如果正确,添加到测试用例库中中,以便以后进行复用,程序结束。
所述可复用测试用例分为以下六类:1)输入、2)输出、3)计算、4)接口、5)数据、6)逻辑。
所述步骤四中XML创建文档过程为:XML中的DTD提供一个包含在XML文件中元素、标记、属性和实体的清单、以及它们之间的关系,该DTD它为文件的结构指定规则,该规则包括元素类型声明、属性表声明以及实体声明。
所述DTD可用于验证文档的有效性,以保证不同的人和程序可以彼此阅读对方的文件,当一个文档的内容符合其定义的结构时,就说明它是有效文档,否则是非有效文档。
DTD元素的书名以字符串<!ELEMENT开始,该字符串标明它是一个元素说明;其次是赋予该元素一个类属性标示符,一般称此为元素名:最后是内容规范部分,内容规范列出允许的元素、属性或内容模型信息。
本发明与现有技术相比所产生的有益效果是:
本发明的一种基于XML的测试用例复用方法采用XML的DTD定义描述可复用的测试用例,在此基础上对测试用例进行查找复用,更好地利用测试用例,该方法面向所有测试人员,包括对用例的管理,整合,复用等,所有的测试用例都遵循这个描述规范,降低了测试用例的维护难度,使用这种方法进行测试用例的复用,不但解决了测试用例格式的无规则性,而且给出了测试用例统一的描述形式,更好的让测试人员进行复用,让广大的测试资源得到广泛的利用,提高测试效率实用性强,易于推广。
附图说明
附图1是本发明的复用过程流程图。
具体实施方式
下面结合附图对本发明的一种基于XML的测试用例复用方法作以下详细说明。
如附图1所示,该一种基于XML的测试用例复用方法,其具体复用过程为:
一、测试人员根据被测试软件的功能特点,定义需要的测试用例类型;
二、根据所定义的测试用例从测试用例库中查找满足要寻求的测试用例;
三、如果测试用例库中可以找到需要的测试用例,则从中提取出可复用的测试用例,程序结束;
四、如果测试用例库中无法找到需要的测试用例,则设计此测试用例并用XML形式表示,验证其正确性,如果正确,添加到测试用例库中中,以便以后进行复用,程序结束。
本发明主要是在研究测试用例复用和XML语言的基础上,提出了一种基于XML的测试用例复用方法,采用XML描述可复用的测试用例,然后在此基础上对测试用例进行查找复用。XML创建文档比较灵活,使用名称空间,能够将名字和其他类似的名字区别来,XML中的DTD提供了一个包含在XML文件中元素、标记、属性和实体的清单,以及他们之间的关系。它为文件的结构指定了一系列规则,包括元素类型声明,属性表声明以及实体声明。
DTD可以用于验证文档的有效性,以保证不同的人和程序可以被彼此阅读对方的文件,当一个文档的内容符合其定义的结构时,就说明它是有效文档,否则是非有效文档。
在任何XML DTD中,元素是主要成分,用来描述内容的标志(Tag),是元素定义的直接结果。有了元素,才有办法标记内容,XML处理器才能阅读和有效显示文档。
定义DTD中的元素决定了标记语言能够描述什么类型的内容,它可能有其它元素、其他类型数据或告知XML分析应用程序关于在别处而不在文档内的资源的描述性表示构成。
DTD语速的书名必须以字符串<!ELEMENT开始,该字符串标明它是一个元素说明。
其次是赋予该元素一个类属性标示符,一般称此为元素名。
最后是内容规范部分,内容规范列出允许的元素、属性或内容模型信息。
测试用例复用设计要遵循的准则:1)完整性准则:输入功能点的测试用例集合为所有可能成功或者失败的组合。2)复用准则:一个系统功能点的某些操作步骤可被其他测试用例复用。3)独立性准则:测试用例之间不能存在依赖关系
可复用测试用例的分类:1)输入、2)输出、3)计算、4)接口、5)数据、6)逻辑。
基于上述方法,现在提供一种用DTD定义描述可复用的测试用的实施例。
1)文档声明部分:<XML VERSION=”1.0 “encoding=”UTF-8”>
2)可复用的测试用例的文档类型声明部分为:<!DOCTYPE tca SYSTEM “tca.dtd”>
3)可复用测试用例的文档元素为所属测试用例集的名称,以便于查找可复用测试用例。如:TestCaseAssembly,简称TCA。把属于一个测试用例集的测试用例定义为一个XML文档。测试用例集为其根元素。
在描述测试用例的时候用到注释,以备以后复用测试用例时作为参考。
<!—一个测试用例集合包括一个或多个测试用例 -->
<!ELEMENT TCA(TestCase+)>
<!—一个测试用例包括测试前提条件,测试过程,预期结果 -->
<!ELEMENT TestCase(precon,TestProcedure,exp)>
<!ELEMENT precon(#PCDATA)>
<!—测试步骤包括具体每一步等元素 -->
<!ELEMENT Step(in,opr)>
<!ELEMENT in(#PCDATA)>
<!ELEMENT opr(#PCDATA)>
<!ELEMENT exp(#PCDATA)>
属性指的是元素的性质,为元素提供附加的消息,对于可复用测试用例的元素,其属性值如下:
<!—一个测试用例集包括编号,名称属性 -->
<!ATTLIST TCA
TID CDATA #REQUIRED
TID CDATA #REQIORED
>
<!—一个测试用例包括编号,名称等属性 -->
<!ATTLIST TestCase
Id CDATA #REQUIRED
Name CDATA #REQUIRED
>
<!—每一步包括步骤数等属性 -->
<!ATTLIST Step
StepNo CDATA #REQUIRED
>
完整的程序清单:
<XML VERSION=”1.0 “encoding=”UTF-8”>
<!DOCTYPE tca SYSTEM “tca.dtd”>
<!—一个测试用例集合包括一个或多个测试用例 -->
<!ELEMENT TCA(TestCase+)>
<!—一个测试用例集包括编号,名称属性 -->
<!ATTLIST TCA
TID CDATA #REQUIRED
TN CDATA #REQIORED
>
<!—一个测试用例包括测试前提条件,测试过程,预期结果 -->
<!ELEMENT TestCase(precon,TestProcedure,exp)>
<!—一个测试用例包括编号,名称等属性 -->
<!ATTLIST TestCase
Id CDATA #REQUIRED
Name CDATA #REQUIRED
>
<!ELEMENT precon(#PCDATA)>
<!—测试步骤包括具体每一步等元素 -->
<!ELEMENT TestProucedure(Step+)>
<!—每一步包括测试输入,测试输出信息-->
<!ELEMENT Step(in,opr)>
<!—每一步包括步骤数等属性 -->
<!ATTLIST Step
StepNo CDATA #REQUIRED
>
<!ELEMENT in(#PCDATA)>
<!ELEMENT opr(#PCDATA)>
<!ELEMENT exp(#PCDATA)>
测试用例复用算法:
在进行软件测试的时候,首先必须根据软件需求分析、设计说明和编码等确定测试目标,即测试需求的集合,根据这些测试需求可以从测试用例复用的质量将决定软件测试的成本和有效性。
通过对系统进行分析,找到需要进行测试的功能点集合F{F1,F2,……,Fn},测试用例库为C{C1,C2,……,Cm}
复用算法如下:
/*算法输出满足条件的可复用测试用例的集合R*/
ReuseMatch(F,C,R)
{ i=1
While(Fi∈F)
{ R:={}
Define the test type that is needed,TYi,
j=1
do while(Cj∈C)
{ query Cj
if there is some test case c∈Cj situable for TYi,
then select c for R,即R:=R+c
j++
}
if(R==Φ)
then {design the new TYi and add this TYi to some Cj;
R:=R+TYi
}
i++;
}
Return(R)
}
对测试用例的查询是不确定,查询结果是一个相似的测试用例集合,最后要从中确定最合适的那个测试用例,可以从影响测试用例评判的多个因素来进行选择。
本文中对软件测试用例的复用进行研究,提出一种基于XML的测试用例复用方法。通过对大量的软件测试用例进行分析,提取出复用测试用例所具有的共有特性,并给出了可复用测试用例要遵守的一些准则,提出了测试用例复用的一般过程及其复用方法。
Claims (5)
1.一种基于XML的测试用例复用方法,其特征在于:其具体复用过程为:
一、测试人员根据被测试软件的功能特点,定义需要的测试用例类型;
二、根据所定义的测试用例从测试用例库中查找满足要寻求的测试用例;
三、如果测试用例库中可以找到需要的测试用例,则从中提取出可复用的测试用例,程序结束;
四、如果测试用例库中无法找到需要的测试用例,则设计此测试用例并用XML形式表示,验证其正确性,如果正确,添加到测试用例库中中,以便以后进行复用,程序结束。
2.根据权利要求1所述的一种基于XML的测试用例复用方法,其特征在于:所述可复用测试用例分为以下六类:1)输入、2)输出、3)计算、4)接口、5)数据、6)逻辑。
3.根据权利要求1或2所述的一种基于XML的测试用例复用方法,其特征在于:所述步骤四中XML创建文档过程为:XML中的DTD提供一个包含在XML文件中元素、标记、属性和实体的清单、以及它们之间的关系,该DTD它为文件的结构指定规则,该规则包括元素类型声明、属性表声明以及实体声明。
4.根据权利要求3所述的一种基于XML的测试用例复用方法,其特征在于:所述DTD可用于验证文档的有效性,以保证不同的人和程序可以彼此阅读对方的文件,当一个文档的内容符合其定义的结构时,就说明它是有效文档,否则是非有效文档。
5.根据权利要求3所述的一种基于XML的测试用例复用方法,其特征在于:DTD元素的书名以字符串<!ELEMENT开始,该字符串标明它是一个元素说明;其次是赋予该元素一个类属性标示符,一般称此为元素名:最后是内容规范部分,内容规范列出允许的元素、属性或内容模型信息。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2013103173578A CN103353859A (zh) | 2013-07-26 | 2013-07-26 | 一种基于xml的测试用例复用方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2013103173578A CN103353859A (zh) | 2013-07-26 | 2013-07-26 | 一种基于xml的测试用例复用方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN103353859A true CN103353859A (zh) | 2013-10-16 |
Family
ID=49310233
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2013103173578A Pending CN103353859A (zh) | 2013-07-26 | 2013-07-26 | 一种基于xml的测试用例复用方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN103353859A (zh) |
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105183645A (zh) * | 2015-08-26 | 2015-12-23 | 中国电子科技集团公司第十四研究所 | 一种基于复用的雷达软件测试设计与实现的方法 |
CN105302718A (zh) * | 2015-10-26 | 2016-02-03 | 浪潮电子信息产业股份有限公司 | 一种面向复用软件的测试模型的设计方法 |
CN106021093A (zh) * | 2016-05-05 | 2016-10-12 | 北京思特奇信息技术股份有限公司 | 一种测试用例复用的方法及系统 |
CN106649106A (zh) * | 2016-12-09 | 2017-05-10 | 北京锐安科技有限公司 | 一种测试用例的生成方法及装置 |
CN107179994A (zh) * | 2017-07-27 | 2017-09-19 | 深圳易嘉恩科技有限公司 | Xbrl系统的联想输入测试用例设计方法 |
CN105224446B (zh) * | 2014-05-26 | 2018-06-19 | 腾讯科技(深圳)有限公司 | 一种测试用例筛选方法及装置、服务器 |
CN108984410A (zh) * | 2018-07-18 | 2018-12-11 | 郑州云海信息技术有限公司 | 一种高复用的测试用例设计方法 |
CN109815147A (zh) * | 2019-01-21 | 2019-05-28 | 深圳乐信软件技术有限公司 | 测试案例生成方法、装置、服务器和介质 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102495789A (zh) * | 2011-10-18 | 2012-06-13 | 瑞斯康达科技发展股份有限公司 | 一种自动化测试方法和设备 |
CN102650966A (zh) * | 2011-02-24 | 2012-08-29 | 王轶辰 | 一种面向复用的嵌入式软件测试方法及其测试系统 |
-
2013
- 2013-07-26 CN CN2013103173578A patent/CN103353859A/zh active Pending
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102650966A (zh) * | 2011-02-24 | 2012-08-29 | 王轶辰 | 一种面向复用的嵌入式软件测试方法及其测试系统 |
CN102495789A (zh) * | 2011-10-18 | 2012-06-13 | 瑞斯康达科技发展股份有限公司 | 一种自动化测试方法和设备 |
Non-Patent Citations (1)
Title |
---|
赵杰: "基于XML的测试用例复用", 《重庆工学院学报(自然科学版)》 * |
Cited By (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105224446B (zh) * | 2014-05-26 | 2018-06-19 | 腾讯科技(深圳)有限公司 | 一种测试用例筛选方法及装置、服务器 |
CN105183645A (zh) * | 2015-08-26 | 2015-12-23 | 中国电子科技集团公司第十四研究所 | 一种基于复用的雷达软件测试设计与实现的方法 |
CN105183645B (zh) * | 2015-08-26 | 2018-07-20 | 中国电子科技集团公司第十四研究所 | 一种基于复用的雷达软件测试设计与实现的方法 |
CN105302718A (zh) * | 2015-10-26 | 2016-02-03 | 浪潮电子信息产业股份有限公司 | 一种面向复用软件的测试模型的设计方法 |
CN106021093A (zh) * | 2016-05-05 | 2016-10-12 | 北京思特奇信息技术股份有限公司 | 一种测试用例复用的方法及系统 |
CN106649106A (zh) * | 2016-12-09 | 2017-05-10 | 北京锐安科技有限公司 | 一种测试用例的生成方法及装置 |
CN107179994A (zh) * | 2017-07-27 | 2017-09-19 | 深圳易嘉恩科技有限公司 | Xbrl系统的联想输入测试用例设计方法 |
CN108984410A (zh) * | 2018-07-18 | 2018-12-11 | 郑州云海信息技术有限公司 | 一种高复用的测试用例设计方法 |
CN109815147A (zh) * | 2019-01-21 | 2019-05-28 | 深圳乐信软件技术有限公司 | 测试案例生成方法、装置、服务器和介质 |
CN109815147B (zh) * | 2019-01-21 | 2022-06-24 | 深圳乐信软件技术有限公司 | 测试案例生成方法、装置、服务器和介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN103353859A (zh) | 一种基于xml的测试用例复用方法 | |
US11113029B2 (en) | Probabilistic matching of web application program interface code usage to specifications | |
CN101361063B (zh) | 支持基于规则的文档内容挖掘的系统与方法 | |
EP1657649B1 (en) | System and method for transforming legacy documents into XML documents | |
CN109885569A (zh) | 基于配置文件对xml数据进行字段提取及结构化方法 | |
Cohen et al. | A structured wrapper induction system for extracting information from semi-structured documents | |
CN110008473A (zh) | 一种基于迭代方法的医疗文本命名实体识别标注方法 | |
Di Iorio et al. | A first approach to the automatic recognition of structural patterns in XML documents | |
CN102663108B (zh) | 基于复杂网络模型并行化标签传播算法的药物社团发现方法 | |
CN102411602A (zh) | 一种基于 fpga 实现的xml 并行投机解析方法 | |
Ivanov et al. | Extracting software requirements from unstructured documents | |
CN103617122A (zh) | 一种源代码的比对方法 | |
CN104850580B (zh) | 一种在互联网上标识和检索教学资源的方法 | |
Winter et al. | Deriving and combining mixed graphs from regulatory documents based on constraint relations | |
Buelta | Python Automation Cookbook: 75 Python automation ideas for web scraping, data wrangling, and processing Excel, reports, emails, and more | |
Nguyen et al. | A span extraction approach for information extraction on visually-rich documents | |
CN104978379B (zh) | 一种应用程序资料站的搭建方法及装置 | |
Al-Msie'deen | Softcloud: A tool for visualizing software artifacts as tag clouds | |
Burget | Hierarchies in HTML documents: linking text to concepts | |
Shigarov | Rule-based table analysis and interpretation | |
CN108984676B (zh) | 一种基于xml的电子书跨终端自适应显示系统及方法 | |
US20090217156A1 (en) | Method for Storing Localized XML Document Values | |
Zhong et al. | Burner: Recipe automatic generation for HPC container based on domain knowledge graph | |
CN102982036A (zh) | 一种语料结构化的方法及装置 | |
JP2000250930A (ja) | 構造化文書検索システム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
WD01 | Invention patent application deemed withdrawn after publication |
Application publication date: 20131016 |
|
WD01 | Invention patent application deemed withdrawn after publication |