220 likes | 328 Views
答辩人:赵鹤 指导老师:洪玫 2014年5月19日. 模型检测技术在测试用例自动生成中的应用. 01 研究背景和意义 02 论文的主要工作 03 文献综述和计量分析方法 04 文献计量分析结果 05 文献综述 06 待解决的问题 07 总结. 目录页. contents. 01 研究背景和意义(1/1).
E N D
答辩人:赵鹤 指导老师:洪玫 2014年5月19日 模型检测技术在测试用例自动生成中的应用
01 研究背景和意义 02 论文的主要工作 03 文献综述和计量分析方法 04 文献计量分析结果 05 文献综述 06 待解决的问题 07 总结 目录页 contents
01 研究背景和意义(1/1) 目前,软件测试是保证软件产品质量的根本途径,其中获取有效的测试用例是保障测试质量的重要前提。软件测试的过程需要消耗大量的资源,手工生成测试用例需要花费较多的时间且容易出错。为了降低成本、节约测试时间,自动生成测试用例是很有必要的。 模型检测技术可以自动执行,并且在系统不满足某个特性时抛出一条路径,被称为反例。利用其能够自动生成反例的特点,已经在测试用例自动生成过程中逐步得到了应用。将模型检测技术运用到测试用例自动生成的过程中,可以提高测试用例生成的效率以及准确性,避免手工编写测试用例的片面性以及由此而产生的软件质量问题,也可以有效的避免时间上的浪费和延误。虽然目前模型检测技术应用在测试用例自动生成过程中仍然存在一些问题,如影响性能的状态爆炸问题等等。随着进一步的研究和发展,相信这些问题也会逐步的被解决。模型检测技术已经在许多测试领域中得到了应用。 鉴于目前对于“模型检测技术在测试用例自动生成中的应用”的相关研究大多数都是针对其中的某一个方法、问题或者技术而言的,全面、整体的分析和描述很少,所以一篇全面的综述性质的文章对以后的研究和学习而言是很有必要的。 ------------------------------------------------------------------------------------------------------------------- 模型检测技术在测试用例自动生成中的应用
02 论文的主要工作(1/1) 这篇论文的主要工作是通过系统化的文献综述方法对研究课题进行选取,根据研究内容对所需的文献进行检索、筛选以及管理,使用文献计量分析的方法对文献的年限、作者、来源、被引用次数以及研究热点进行分析。通过文献阅读提取出与研究问题相关的内容,对其进行分析和总结,最终整理出一篇综述。 本文主要的研究问题是: 问题1:模型检测技术下的测试用例自动生成的方法有哪些? 问题2:模型检测技术下的测试用例自动生成的工具有哪些? 问题3:模型检测技术下的测试用例自动生成的现状和趋势是什么? 问题4:模型检测技术下的测试用例自动生成的优势与缺陷是什么? ------------------------------------------------------------------------------------------------------------------- 模型检测技术在测试用例自动生成中的应用
03 文献综述和计量分析方法(1/2) 计量分析框架: 文献综述分析框架: 计量分析工具:Endnote X7 、Excel、Refviz 2.1 ------------------------------------------------------------------------------------------------------------------- 模型检测技术在测试用例自动生成中的应用
03 文献综述和计量分析方法(2/2) • 文献来源: • 文献的检索范围:Google,Google Scholar,IEEE Xplore等搜索引擎以及IEEE Digital Library,CNKI,万方等数据库。 • 检索式:(“model checking” OR “model checker”) AND (“test case generation” OR “automatically generate test case” OR “automatic test”)。 筛选原则: 1.根据标题和摘要的内容进行筛选,将与所需主题关联不大的论文筛掉。 2.根据文章的来源和出处进行筛选,保留期刊EI以及SCI级别以上的论文、一些国内重要会议以及国际会议的论文以及学位论文库中的一些博士论文。 3.根据文章的长度来进行筛选,保留长文。 4.根据文章的发表时间以及被引用次数进行筛选,保留被引用次数较高的。 筛选结果: 根据筛选原则对文献进行筛选后,最终保留了155篇与研究问题相关的文献,进行下一步的分析。 ------------------------------------------------------------------------------------------------------------------- 模型检测技术在测试用例自动生成中的应用
04 文献计量分析结果(1/7)--年限分析 图1.1 出现次数>2的作者分布图 图1.1是论文数量随年份变化的曲线图,如图所示:1997-2000年相关文献的数量保持在1篇,2000-2003年文献数量在微量增长,2003-2005年文献数量有下降的趋势,但是在2005-2007年之间呈增长趋势,2007-2008年文献数量又在下降,在2008-2013年文献数量基本呈增长趋势。但从整体来讲,相关文献的数量随年份变化的曲线整体呈现上升趋势,说明随着年代的发展,与此研究问题相关的论文数量也在增加。也就是说,随着年代的发展,针对这个问题的研究越来越多,但基本上仍处于发展阶段,这个问题在以后的研究中还有一定的前景。 ------------------------------------------------------------------------------------------------------------------- 模型检测技术在测试用例自动生成中的应用
04 文献计量分析结果(2/7)--作者分析 图1.2 作者发表论文篇数占总数的比例统计表 从图1.2可以看出,在这155篇文献中,作者分布较为分散,发表过一篇文献的占总数的91.73%,发表过6篇或7篇文献的作者都只有一个且仅占总数的0.24%。这说明很多作者都有对这个话题进行研究,但是专注于此方面的作者却很少,还没有形成一个核心的作者群。 图1.3 出现次数>2的作者分布图 从图1.3可以看出:Fraser,G.(7篇)和Wotawa,F.(6篇)这两位作者出现的频次相对较高,说明这两位作者对这个研究问题的研究较多,它们所编写的文献对于这个研究问题具有一定的指导意义。另外,由上面的分析结果可以看出这个问题仍然处于发展阶段,如果对这个问题感兴趣可以进行深入的研究。 ------------------------------------------------------------------------------------------------------------------- 模型检测技术在测试用例自动生成中的应用
04 文献计量分析结果(3/7)--来源分析 从图1.4可以看出:被分析的文献中有44%是期刊文章,37%是会议集中出现的文章,这两种类型所占的比例较大。 图1.4 不同类型论文数量所占比例饼图 图1.5是期刊文献来源分布图,从图中可以看出来源范围比较广,其中比较有代表性的包括Ieee Transactions on Software Engineering(2篇)、Journal of Software(2篇)、Communications of the ACM(2篇)等。 图1.6是会议集来源分布图,其中比较有代表性的有2013 IEEE Sixth International Conference(4篇)、3rd International Workshop Advances in Model Based Testing(2篇)等。 图1.5 期刊文献来源分布柱形图 ------------------------------------------------------------------------------------------------------------------- 模型检测技术在测试用例自动生成中的应用 图1.6 会议集文献来源分布柱形图
04 文献计量分析结果(4/7)--被引用次数分析 图1.7 被引用次数在不同范围内的文献分布表 图1.7是被引用次数在不同范围内的文献分布表,从这张表中我们可以看出被引用次数<50次占86.45%,被引用次数>100次的占7.10%,相对来讲被引用次数高的文献可能更具有指导意义。 图1.8 被引用次数>100的文献分布条形图 图1.8对被引用次数>100次的文献进行了统计,从图中可以直观的看到被引用次数较高的几篇文献,为后期文献综述的编写提供了一些较为权威的参考资料。 ------------------------------------------------------------------------------------------------------------------- 模型检测技术在测试用例自动生成中的应用
04 文献计量分析结果(5/7)--热点分析 图1.9 出现次数>6的关键词分布图 从图1.9中可以看出:关键词大部分集中在模型检测(model checking)和软件测试(software testing)上,对于目前的研究问题而言,已经搜集到的文献与研究主题基本相符,可以就收集到的文献进行深入的分析和研究。 ------------------------------------------------------------------------------------------------------------------- 模型检测技术在测试用例自动生成中的应用
04 文献计量分析结果(6/7)--热点分析 图1.10 关键字相关度矩阵图 图1.10是使用RefViz 2.1生成的关键字相关度矩阵图,在这个矩阵中,颜色越深面积越大越趋近于红色表示相关性越高。coverage和generate execution technique的相关度较高,说明这个领域中对基于覆盖的测试用例生成执行技术关注度比较高;generate和specification generate technique的相关度较高,说明该领域对基于规格说明的测试用例生成技术关注度也比较高。 ------------------------------------------------------------------------------------------------------------------- 模型检测技术在测试用例自动生成中的应用
04 文献计量分析结果(7/7)--热点分析 图1.11 主题词分组显示图组 图1.11包括4个主题词分组显示图。图中越密集的地方相关度越高,有两处所处的位置距离中心比较远,说明它们之间的关联性比较小,基本上可以将这两组的剔除掉。较为密集的地方可以作为分析的主体进行深入的分析。除此之外,密集部分的关键词主要集中在model、check、generation、tool、method、specification、test上,由此可知此领域的研究热点是模型检测以及需求规格说明相关的测试用例生成方法和工具。 ------------------------------------------------------------------------------------------------------------------- 模型检测技术在测试用例自动生成中的应用
05 文献综述(1/6)--主要分类 在文献综述的过程中,主要从以下几个方面对相关内容进行了提取、分析、归纳和总结: 工具 方法 应用 问题 解决方案 现状和趋势 ------------------------------------------------------------------------------------------------------------------- 模型检测技术在测试用例自动生成中的应用
基于覆盖的: 基于需求的: 05 文献综述(2/6)--方法 主要从两个方面对基于模型检测的测试用例生成方法进行描述:基于覆盖的和基于需求的。其中比较典型的方法如下: 1.Hong和Lee提出了一个方法,使用状态覆盖和转换覆盖的准则从一个程序的控制流或EFSM模型中生成测试用例。 2.MC/DC(modified decision/condition)覆盖准则在代码覆盖的环境中被提出,Rayadurgam和Heimhahl针对MC/DC描述了一种方法来生成对(pairs)测试用例。 ... 1.Engels等人在1997年描述了一个由需求属性生成测试用例的方法(在需求属性被用作测试目的情况下),但是其缺点是每个需求属性只能生成一个测试用例。 2.Callahan等人提出了执行树等价类划分的方法,针对一个需求属性提供两种路径(即属性满足和属性违反)。 ... ------------------------------------------------------------------------------------------------------------------- 模型检测技术在测试用例自动生成中的应用
05 文献综述(3/6)--工具 列举出了一些常用的模型检测工具,具体如下: 同时对可以应用于测试用例生成且已经公开的模型检测工具进行了描述,具体如下: 从3.0版本开始,SAL包括工具SAL-ATG,都允许使用SAL来生成测试用例。 ATGT是一个基于java的工具,它实现了在某几篇文献中提出的为ASM规格说明自动生成测试用例的概念。它提供了一个图形化的用户界面并且使用模型检测器SPIN。这个工具可以自动生成陷阱属性,并且以图形化的方式对它们进行阐述。 ------------------------------------------------------------------------------------------------------------------- 模型检测技术在测试用例自动生成中的应用
05 文献综述(4/6)--应用 对基于模型检测的测试用例自动生成在不同方面的应用进行了描述,主要包括几个方面: ------------------------------------------------------------------------------------------------------------------- 模型检测技术在测试用例自动生成中的应用
05 文献综述(5/6)--问题及解决方案 针对基于模型检测的测试用例自动生成中存在的问题,主要归纳为以下的几个方面,同时针对每个问题给出了相应的解决方案。具体如下: ------------------------------------------------------------------------------------------------------------------- 模型检测技术在测试用例自动生成中的应用
05 文献综述(6/6)--现状和趋势 根据之前的计量分析结果以及文献中的相关内容,可以总结出这一研究问题的现状和趋势如下: 现状:许多研究者对该研究问题都有研究,也取得了许多显著的成就,使许多真实的应用有了合适的技术支持。但是其中仍然有很多问题需要进一步解决,如状态爆炸和模型创建等。 趋势:对目前存在的问题进行研究,找到合适的解决方案,并在此基础上寻找更好的方法和技术来提高测试用例生成的效率和准确性。使软件产品的质量得到更好的保障。 仍处于发展阶段,需进一步深入研究 解决现有问题,逐步提高生成效率和准确性 ------------------------------------------------------------------------------------------------------------------- 模型检测技术在测试用例自动生成中的应用
06 待解决的问题(1/1) 到目前为止,待解决的问题主要包括以下几个: 1.状态爆炸问题 2.模型抽象问题 3.模型生成问题 4.线性跟踪反例的问题 5.缺乏实际的经验记录的问题 ... ------------------------------------------------------------------------------------------------------------------- 模型检测技术在测试用例自动生成中的应用
07 总结(1/1) 目前,模型检测技术在测试用例自动生成中的应用十分广泛。模型检测技术在测试用例自动生成中的应用,测试用例生成的效率和准确性都得到了提高,作为软件测试核心,也为保障软件产品质量起到了相当大的作用。根据前面的计量分析可以看出,这方面的研究还处于发展阶段,仍然存在很多问题亟待解决,如模型创建、模型抽象、状态爆炸导致的性能限制等问题。随着进一步的研究和发展,相信这些问题也会逐步的被解决。 ------------------------------------------------------------------------------------------------------------------- 模型检测技术在测试用例自动生成中的应用
敬请各位老师批评指正! ------------------------------------------------------------------------------------------------------------------- 模型检测技术在测试用例自动生成中的应用