CN109460354B - 一种基于rdf推理进行测试用例约简的方法 - Google Patents

一种基于rdf推理进行测试用例约简的方法 Download PDF

Info

Publication number
CN109460354B
CN109460354B CN201811202039.6A CN201811202039A CN109460354B CN 109460354 B CN109460354 B CN 109460354B CN 201811202039 A CN201811202039 A CN 201811202039A CN 109460354 B CN109460354 B CN 109460354B
Authority
CN
China
Prior art keywords
rdf
reasoning
test
test case
owl
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
Application number
CN201811202039.6A
Other languages
English (en)
Other versions
CN109460354A (zh
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.)
Nanjing University of Posts and Telecommunications
Original Assignee
Nanjing University of Posts and Telecommunications
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 Nanjing University of Posts and Telecommunications filed Critical Nanjing University of Posts and Telecommunications
Publication of CN109460354A publication Critical patent/CN109460354A/zh
Application granted granted Critical
Publication of CN109460354B publication Critical patent/CN109460354B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

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/3684Test management for test design, e.g. generating new test cases

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

本发明提出了一种基于RDF推理进行测试用例约简的方法,包括预处理步骤,OWL建模,初步推理,进一步推理及测试用例约简。该方法从含有RDFa的HTML源代码出发,提取出RDF的信息,并生成初始的RDF图;利用工具进行owl建模,并完成初步推理工作;分析owl模型中元素间的关系,完善元素的属性等,设计推理规则,利用推理工具推导出页面元素间隐含的关系,生成完善的RDF图;结合RDF图生成测试用例的原理,标记出所有的测试路径,根据测试路径对已经生成的测试路径进行约简,最终生成精简的测试用例集。该方法能够生成覆盖范围广,数量少的精简测试用例集,同时提高了测试效率,降低测试成本。

Description

一种基于RDF推理进行测试用例约简的方法
技术领域
本发明给出了一种测试用例约简的方法,主要利用RDF推理机制找出页面元素间的隐含关系,并生成RDF图,对照RDF图与已生成的测试用例,对已经生成的测试用例进行约简,从而生成覆盖面广的测试用例。
背景技术
随着科学技术的不断发展,以计算机硬件为载体、软件为灵魂的计算机应用已经渗透到各行各业,在为人们提高工作效率、工作质量和改造传统产业中起着越来越重要的作用。科学迅速发展,给人们的生活带来了极大的便利的同时,也带来了安全问题。软件质量问题和软件产品生产率低下等问题越来越受到人们高度重视,并已经成为制约计算机应用产业发展的瓶颈。当前,软件质量已经严重影响着人们的生活、学习和工作,并日益成为影响社会生产力发展的重要因素,对信息产业和国民经济发展有着极为明显的推动作用。
为保证软件的质量,需要对软件进行充分的测试,然而在软件测试中,穷尽测试时不可能的,也没有必要,因此如何选取少量的测试用例,进行高效的测试一直是个备受关注的问题。选择好的测试用例不仅能减少软件测试的工作量,而且能够降低测试成本,因此测试用例的选择至关重要。
首先对测试需求进行,根据各种测试需求生成一系列测试用例,然后对生成的测试用例集进行约简操作,最终获得精简的测试用例,达到数量既少,价值又高的要求。目前常用的约简技术有贪心算法、启发式算法和整数规划方法等。
为了能够对测试用例集进行约简,贪心算法每次从测试用例集中选择一个尽可能满足多个测试需求的测试用例,直到最后满足所有的测试需求为止。M.J.Harrold等提出一种根据测试用例的重要性来选择测试用例的启发式方法;在贪心算法和M.J.Harrold等提出的启发式算法的基础上,人们又提出一种将这两种方法进行有机结合的新方法。这种方法首先选出必不可少的重要测试用例,然后利用贪心算法选出能多地满足未被满足的测试需求的测试用例。T.Y.Chen和M.F.Lau在这些算法的基础上提出一个新的测试用例集简化的启发式算法,在这个算法中不仅结合了贪心算法、M.J.Harrold等提出的启发式算法的优点,而且充分考虑了剔除1-1冗余策略,并用仿真方法研究这几种算法的性能,给实际使用这几个算法提供了一些参考和指导,不过这些方法不能保证产生的结果是优的。J.G.Lee和C.G.Chung提出了一种将原问题转化为整数规划问题,利用整数规划方法求优解的方法,可以保证选出的测试用例集是原测试用例集优的约简。
RDF推理机制主要是利用一些已有的推理原则对已有的RDF资源之间的关系进行推理,并且推理规则可根据原型的需要进行自定义,从而找出资源间隐含的数据关系,生成关系更全面的RDF图,再根据RDF图生成测试用例的原理,对已生成的测试用例进行约简,去除不需要的测试用例,增加满足新关系的测试用例,保证最终的测试用例能够全面的覆盖测试需求。
发明内容
技术问题:本发明提出了一种基于RDF推理的测试用例约简的方法。该方法将初始的RDF图根据推理规则进行推理,找出RDF图中数据之间的隐含关系,依据关系丰富的RDF图对已经生成的测试用例进行约简,最终生成能够满足测试需求的精简测试用例集。该方法可以找出数据之间隐含的关系,可以生成更全面的测试用例,最终给出精简的测试用例。
技术方案包括以下步骤:
步骤1)预处理步骤:首先从含有RDFa信息的HTML源代码中提取出对应的RDFa信息,并根据RDF的XML文档,生成RDF图。
步骤2)OWL建模:首先分析RDF的XML文档,分析其中的元素类型及元素间的关系,其次,分析OWL建模所需的信息,再将之前分析的信息进行扩充与完善,最后,更具完善的信息,利用工具进行OWL建模。
步骤3)初步推理:首先利用步骤2已经建好的OWL模型,添加完备的属性信息,利用简单的推理工具进行初步推理,进行关系的简单完善。
步骤4)进一步推理:首先分析源代码中元素间的联系,尽可能找出元素间的所有关系其次,分析已有的规则库,了解大概的推理规则数量与内容,更具模型特点进行编写查找规则的代码,最终实现推理。并根据推理后信息进行RDF图完善。
步骤5)测试用例约简:将已生成的测试用例与完善的RDF图进行对比,根据RDF图生成测试用例的原理:每一条路径即为一个测试用例的规则,对之前的测试用例进行增删改操作,删除没有价值的测试用例,增加没有的测试用例,因此生成覆盖范围广的测试用例集。
有益效果
本发明对比已有技术具有以下显著创新点及优点:
(1)RDF的信息提取,RDFa直接添加在HTML源代码中不影响页面的显示,需要RDF信息时只要直接提取HTML中的RDF信息即可,减轻负担,提高效率。
(2)OWL建模,RDF表示的数据间的关系是有限的,OWL能够更完整的描述数据间的关系,弥补了RDF的缺陷,可以推理出更多的关系。
(3)Jena提供了更全面完整的推理规则,而且可以自定义推理规则,更有扩展性,可以更全面的推理出数据间的隐含关系。
(4)虽然RDF图生成测试用例的方法可以生成一系列的测试用例,但所有的测试用例都是基于数据间有直接的关系而产生的,如果推理规则不够全面就会导致产生的测试用例覆盖的范围不够广,因此使用RDF图进行测试用例的约简可以对产生的测试用例进行查漏补缺,会让之前的测试用例更加完善,提高测试质量。
附图说明
图1为整体流程图;
图2为测试用例约简流程图。
具体实施方式
以下结合附图具体说明本发明技术方案(如附图1,2所述)
一种基于RDF推理进行测试用例约简的方法,从页面的HTML源代码开始,利用工具提取出RDFa的信息并保存为XML文件,生成RDF图,分析页面元素间的关系,利用Jena工具进行推理,生成关系完善的RDF图的同时生成测试路径,与之前的测试用例进行对比,进行测试用例的增删改,最终得到满足测试需求的精简测试用例集。图1给出了本发明方法的整体流程,具体实现步骤如下:
所述步骤1的具体步骤为:
步骤1.1,源代码进行分析,提取RDF的信息
通过使用工具或自己编写将源代码中的RDFa信息提取出来,保存为xml文件。
步骤1.2,画出RDF图
所述步骤2的具体步骤为:
步骤2.1,owl类建立
根据owl文件中的类,在工具(工具为protégé)中建立对应的类,并将各个类之间的属性添加完整,如互斥,子类等关系。
步骤2.2,属性建立
根据owl文件分析模型中所涉及的属性,分析属性间是否有从属关系等,进行属性建立,同时添加各属性的相关约束,如eat与eated是互逆的,is-part-of属性具有传递性等。
步骤2.3,类与属性关系建立
查看XML文件,将每个类之间的关系通过属性连接起来,比如有植物和动物两个互斥的类,植物和动物两个大类中有树叶和草食性动物等子类,食草性动物通过吃这个属性将树叶这个类连接,这样就完成了某个关系的建立。而OWL模型就是由一系列关系组成的。
所述步骤3的具体步骤为:
步骤3.1,初步推理
在protégé中导入reasoner工具,进行初步的推理,并且生成通过初步推理的关系图。
步骤3.2,OWL模型导出
将初步推理后的OWL模型的文件保存导出。
所述步骤4的具体步骤为:
步骤4.1,推理规则
准备推理规则。
步骤4.2,推理
首先利用Jena进行推理的java代码编写,结合步骤4,1准备的推理规则,进行推理。
步骤4.3,XML文件完善
将推理出的结果以XML文件的格式添加到步骤1中的XML文件中。
步骤4.4,RDF图完善
根据完善的XML文件画出关系完善后的RDF图。
所述步骤5的具体步骤为:
步骤5.1,测试路径
分析RDF图中的连线关系图,对连线进行标号,采用RDF图生成测试用例的原理,根据RDF关系图生成所有的测试路径。
步骤5.2,测试用例增删改
将事先生成的测试用例与步骤5.1生成的测试路径进行比对,对之前生成的测试用例进行增删改,删除不合理的测试用例,增加按照路径生成的测试用例,最终生成一个覆盖范围广,数量少的测试用例集。

Claims (5)

1.一种基于RDF推理进行测试用例约简的方法,其特征在于:包括以下步骤:
步骤1)预处理步骤:首先从含有RDFa信息的HTML源代码中提取出对应的RDFa信息,并根据RDF的XML文档,生成RDF图;
步骤2)OWL建模:首先分析RDF的XML文档,分析其中的元素类型及元素间的关系,其次,分析OWL建模所需的信息,再将之前分析的信息进行扩充与完善,最后,根据完善的信息,利用工具进行OWL建模;
步骤3)初步推理:首先利用步骤2)已经建好的OWL模型,添加完备的属性信息,利用简单的推理工具进行初步推理,进行关系的简单完善;
步骤4)进一步推理:首先分析源代码中元素间的联系,找出元素间的所有关系,其次,分析已有的规则库,了解推理的规则数量与内容,根据模型特点进行编写查找规则的代码,最终实现推理;并根据推理后信息进行RDF图完善;
步骤5)测试用例约简:将已生成的测试用例与完善的RDF图进行对比,根据RDF图生成测试用例的原理:每一条路径即为一个测试用例的规则,对之前的测试用例进行增删改操作,删除没有价值的测试用例,增加没有的测试用例,因此生成覆盖范围广的测试用例集;
所述步骤2)的具体步骤为:
步骤2.1)OWL类建立:
根据OWL文件中的类,在工具即protégé中建立对应的类,并将各个类之间的属性添加完整,包括互斥,子类关系;
步骤2.2)属性建立:
根据OWL文件分析模型中所涉及的属性,分析属性间是否有从属关系,进行属性建立,同时添加各属性的相关约束,eat与eated是互逆的,而is-part-of属性具有传递性;
步骤2.3)类与属性关系建立:
查看XML文件,将每个类之间的关系通过属性连接起来,有植物和动物两个互斥的类,植物和动物两个大类中有树叶和草食性动物子类,食草性动物通过吃这个属性将树叶这个类连接,这样就完成了1个关系的建立;而OWL模型就是由一系列关系组成的。
2.根据权利要求1所述的方法,其特征在于:所述步骤1)的具体步骤为:
步骤1.1)对源代码进行分析,提取RDF的信息:
通过使用工具或自己编写,将源代码中的RDFa信息提取出来,保存为XML文件;
步骤1.2)画出RDF图:
通过RDF的XML文件,利用工具自己编写画出初步的RDF图。
3.根据权利要求1所述的方法,其特征在于:所述步骤3)的具体步骤为:
步骤3.1)初步推理:
在protégé中导入reasoner工具,进行初步的推理,并且生成通过初步推理的关系图;
步骤3.2)OWL模型导出:
将初步推理后的OWL模型的文件保存导出。
4.根据权利要求1所述的方法,其特征在于:所述步骤4)的具体步骤为:
步骤4.1)推理规则:
准备推理规则;
步骤4.2)推理:
首先利用Jena进行用以推理的java代码的编写,结合步骤4.1)准备的推理规则,进行推理;
步骤4.3)XML文件完善:
将推理出的结果以XML文件的格式添加到步骤4.1)中的XML文件中;
步骤4.4)RDF图完善:
根据完善的XML文件画出关系完善后的RDF图。
5.根据权利要求1所述的方法,其特征在于:所述步骤5)的具体步骤为:
步骤5.1)测试路径:
分析RDF图中的连线关系图,对连线进行标号,采用RDF图生成测试用例的原理,根据RDF关系图生成所有的测试路径;
步骤5.2)测试用例增删改:
将事先生成的测试用例与步骤5.1)生成的测试路径进行比对,对之前生成的测试用例进行增删改,删除不合理的测试用例,增加按照测试路径生成的测试用例,最终生成一个覆盖范围广、数量少的测试用例集。
CN201811202039.6A 2017-12-28 2018-10-16 一种基于rdf推理进行测试用例约简的方法 Active CN109460354B (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN2017114545680 2017-12-28
CN201711454568 2017-12-28

Publications (2)

Publication Number Publication Date
CN109460354A CN109460354A (zh) 2019-03-12
CN109460354B true CN109460354B (zh) 2021-09-24

Family

ID=65607639

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201811202039.6A Active CN109460354B (zh) 2017-12-28 2018-10-16 一种基于rdf推理进行测试用例约简的方法

Country Status (1)

Country Link
CN (1) CN109460354B (zh)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11113167B1 (en) 2020-12-15 2021-09-07 International Business Machines Corporation System testing infrastructure with hidden variable, hidden attribute, and hidden value detection
US11132273B1 (en) 2020-12-15 2021-09-28 International Business Machines Corporation System testing infrastructure with hidden variable, hidden attribute, and hidden value detection
US11379352B1 (en) 2020-12-15 2022-07-05 International Business Machines Corporation System testing infrastructure with hidden variable, hidden attribute, and hidden value detection
US11204848B1 (en) 2020-12-15 2021-12-21 International Business Machines Corporation System testing infrastructure with hidden variable, hidden attribute, and hidden value detection
US11188453B1 (en) 2020-12-15 2021-11-30 International Business Machines Corporation Verification of software test quality using hidden variables
CN113961470A (zh) * 2021-11-02 2022-01-21 中国银行股份有限公司 精简测试案例的方法及装置

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102915271A (zh) * 2012-10-31 2013-02-06 北京邮电大学 基于控制流图的单元回归测试用例集合优化方法
CN103823855A (zh) * 2014-02-19 2014-05-28 天津大学 面向语义网的中文百科知识组织与集成方法
CN104331477A (zh) * 2014-11-04 2015-02-04 哈尔滨工业大学 基于联邦式检索的云平台并发性能测试方法
CN105468517A (zh) * 2015-11-10 2016-04-06 中国矿业大学 一种基于黑盒测试用例约简的统计错误定位方法
US9367433B2 (en) * 2013-02-13 2016-06-14 International Business Machines Corporation Generating input values for a test dataset from a datastore based on semantic annotations
CN106095662A (zh) * 2016-05-23 2016-11-09 浪潮电子信息产业股份有限公司 一种基于程序切片的测试用例集约简方法
CN106991051A (zh) * 2017-04-05 2017-07-28 西安邮电大学 一种基于变异测试和关联规则的测试用例约简方法
CN107391658A (zh) * 2017-07-18 2017-11-24 重庆邮电大学 一种基于rdf数据模型的产品信息管理系统及方法

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20040210866A1 (en) * 2003-04-17 2004-10-21 Richard Friedman Method of creating a unit test framework to test a resource description framework based object
US9658944B2 (en) * 2015-08-20 2017-05-23 Ca, Inc. Generic test automation for graphical user interface (GUI) applications

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102915271A (zh) * 2012-10-31 2013-02-06 北京邮电大学 基于控制流图的单元回归测试用例集合优化方法
US9367433B2 (en) * 2013-02-13 2016-06-14 International Business Machines Corporation Generating input values for a test dataset from a datastore based on semantic annotations
CN103823855A (zh) * 2014-02-19 2014-05-28 天津大学 面向语义网的中文百科知识组织与集成方法
CN104331477A (zh) * 2014-11-04 2015-02-04 哈尔滨工业大学 基于联邦式检索的云平台并发性能测试方法
CN105468517A (zh) * 2015-11-10 2016-04-06 中国矿业大学 一种基于黑盒测试用例约简的统计错误定位方法
CN106095662A (zh) * 2016-05-23 2016-11-09 浪潮电子信息产业股份有限公司 一种基于程序切片的测试用例集约简方法
CN106991051A (zh) * 2017-04-05 2017-07-28 西安邮电大学 一种基于变异测试和关联规则的测试用例约简方法
CN107391658A (zh) * 2017-07-18 2017-11-24 重庆邮电大学 一种基于rdf数据模型的产品信息管理系统及方法

Non-Patent Citations (5)

* Cited by examiner, † Cited by third party
Title
RDF Test Cases;Jan Grant等;《https://www.w3.org/TR/rdf-testcases/》;20040210;第1-32页 *
一种基于Android平台GUI录制回放工具的设计与实现;张灿等;《计算机应用与软件》;20121231;第29卷(第12期);第6-9页 *
基于RDF(S)资源查询的实体关系模型构建;高相斌;《中国优秀硕士学位论文全文数据库 信息科技辑》;20171015(第10期);第I138-160页 *
基于RDF图的测试用例生成;李小亮等;《西南大学学报(自然科学版)》;20140131;第36卷(第1期);第146-151页 *
形式语义描述方法研究进展与评价;张迎周等;《南京邮电大学学报(自然科学版)》;20061231;第26卷(第6期);第86-94页 *

Also Published As

Publication number Publication date
CN109460354A (zh) 2019-03-12

Similar Documents

Publication Publication Date Title
CN109460354B (zh) 一种基于rdf推理进行测试用例约简的方法
CN109739994B (zh) 一种基于参考文档的api知识图谱构建方法
US9304672B2 (en) Representation of an interactive document as a graph of entities
CN101650651A (zh) 一种源代码级别程序结构的可视化方法
Sicilia et al. AutoMap4OBDA: Automated generation of R2RML mappings for OBDA
CN101350033A (zh) 一种owl信息到关系数据库的转换方法及装置
CN106897198B (zh) 一种日志数据的处理方法及装置
CN108197187A (zh) 查询语句的优化方法、装置、存储介质和计算机设备
CN102819542A (zh) 展现实例文档的方法及装置
CN114564482A (zh) 一种面向多实体的标签系统及处理方法
US10360208B2 (en) Method and system of process reconstruction
CN116628228A (zh) 一种rpa流程推荐方法以及计算机可读存储介质
Newman et al. Modeling the relationship between identifier name and behavior
Surianarayanan et al. Towards quicker discovery and selection of web services considering required degree of match through indexing and decomposition of non–functional constraints
CN107436919B (zh) 一种基于本体和boss的云制造标准服务建模方法
CN113190582B (zh) 一种数据实时交互式挖掘流建模分析系统
Hellal et al. Nodar: mining globally distributed substructures from a single labeled graph
Judge et al. Galaxy: IBM ontological network miner
Zhang et al. Formal concept analysis approach for data extraction from a limited deep web database
Cheng et al. Using process specification language for project information exchange
Alviano Algorithms for solving optimization problems in answer set programming
CN111368055A (zh) 一种专利数据库联合企业信息平台的检索方法和装置
Chaves-Fraga et al. Enhancing OBDA query translation over tabular data with Morph-CSV
CN117235236B (zh) 对话方法、装置、计算机设备和存储介质
de Oliveira Arantes et al. An infrastructure for managing semantic documents

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