时序扩展的UML状态图的测试用例生成研究

别来无恙 提交于 2020-03-04 08:24:26

一、基本信息

标题:时序扩展的UML状态图的测试用例生成研究
时间:2014
出版源:西南大学
领域分类:时序扩展;UML状态图;测试用例;需求规格说明;模型

二、研究背景

问题定义:时序扩展的UML状态图的测试用例生成研究
难点:了解透彻相关的理论基础;知晓充分性准则、UML状态图的时序扩展;
相关工作:学习软件测试基础理论,了解UML及其建模技术;看懂UML状态图;

三、创新方法

1.理论基础和建模技术相结合,发挥了充分性准则的作用;

四、实验

实验1:相关理论基础

要探究的问题:软件测试基础理论;基于模型的测试用例生成简介;UML状态图。
结论:作为检测和控制软件质量的重要手段,软件测试伴随着软件从设计到完成开发的整个生命周期。一个科学的合理的软件开发过程,软件测试与软件的设计和幵发是同步进行的。
模型可以理解为对要处理的系统或者问题,在某些角度或者某些特定层次上进行 的抽象化的描述,使其更加简单,方便人们理解其本质。采用合理的手段对软件进行建模 ,可以使软件的开发者更好地把握 软件的开发需求。将模型的思想应用与测试用例生成过程中, 就是将软件测试的活动进行模型的抽象化。
状态图是一种可以对系统动态行为建模的图形,用于描述系统类对象的生命周期中所有的状态 ,以及当特定事件发生时所引起的类对象状态的转移,可反映系统根据不同事件的发生导致类实体发生状态转移的状况 。UML状态图是由类的实例对象的状态和关联这些状态的转移组成。UML状态图中的每个对象可以被看做独立的,对象可以通过探测事件对事件做出的回应来与其他对象进行通信。对象探测到的变动可以用事件来表达,导致对象状态变化的事物都可以称为事件 。一旦对象探测到事件,对象就可以根据当前状态对事件做出响应,这响应可能是对象由一个状态转向另一个状态,也可能是去执行某种操作。

实验2:充分性准则

要探究的问题:软件测试的充分性问题;基于UML状态图的测试充分性准则;
结论:软件测试的目标不是为了验证软件是无错误的,而是为了发现软件的缺陷和错误 。实际测试过程中无法发现软件的所有错误,但是可以尽量多地发现软件中相对重要的缺陷。测试的充分性的提出为软件 测试过程提供了一定的理论依据 。
在实际的软件测试过程中,仅用以上几种测试准则进行了测试用例的设计,所产生的测试用例往往不能充分的发现软件中的缺陷,究其原因是因为所生成的测试用例集不够完善。经过实践,测试人员发现软件状态之间的复杂的转移关系也可以导致软件发生错误,而在设计测试用例集时设计者并没有考虑到状态转移信息,这必然造成测试的不充分。
在基于规格说明的测试中,往往要考虑谓词是否被准确地描述,谓词在基于规格说明的软件中发挥着重要的作用,在软件测试中对谓词的测试也是尤为重要的。

实验3:UML状态图的时序扩展

要探究的问题:时序扩展方案;系统实例介绍;
结论:为使状态图适应实时系统的时序特性,本文提出了一个UML状态图时序扩展方案,该方案主要遵循以下原则:(对状态图的时序扩展应简单 、实用,不能对模型中的元模型进行修改 。(扩展后的状态 图应便于对系统分析。
我们可以通过一个实时系统的示例进行建模和分析。本文以一个银行客户端系统的查询账户和转账功能为例,说明怎样用时序扩展的状态图描述实时系统的问题 。对于一个银行客户端系统,往往是有时 间限制的,用户在登录系统的状态下,如果系统一直处于等待状态 ,无任何操作或者在规定时间内未完成操作,为了客户的账户安全,系统中的用户会自动退出。

实验4:时序扩展的UML状态图生成测试用例算法研究

要探究的问题:UML状态图生成测试用例的基本算法;时序扩展的状态图生成测试用例的基本算法;充分性覆盖准则处理;测试序列生成的处理;测试路径优化的处理;
结论:完全判定准则是一种基于谓 词覆盖的准则,谓词覆盖准则中明确要求在对状态之间的迁移测试时,需要对迁移的布尔表达式进行真假测试 在实时系统中,对时间约束的处理就是对布尔表达式的处理,因 此处理实时系统中完全判定准则就是要求对时间约 束确定的时间域进行的充分性测试。
遗传算法是一种简单通用的算法,在计算机智能 、模式识别以及神经网络中都得到了广泛的应用。遗传算法具有较强的全局搜索能力,因 此十分适合处理测试路径优化问题。

五、结论

作者的总结:软件测试在软件开发周期中的作用越来越突出,软件测试技术的研究可以有效的提高测试效率。在软件测试中,关键的工作是测试用例的设计和选 择,研究软件测试用例的生成是非常有意的 。在软件测试中面向需求规格说明的软件测试的研究相对比较滞后,本文主要完成面向需求规格说明的实时系统的测试用例生成的研究,采用了时序扩展的状态图生成测试用例的方法。
自己的评价:软件测试在软件开发周期中发挥着越来越重要的作用,人们对软件测试技术的研究随之更加深入。面向结构的软件测试技术已经比较成熟,然而对于面向需求规格说明的软件测试的研究相对滞后。而在软件测试中测试用例的选择是尤为重要的,好的测试用例可以达到事半功倍的效果,而差的测试用例可能会浪费更多的资源和时间。这篇文献就在对UML状态图生成测试用例的方法进行研究的基础上,提出了时序扩展的UML状态图生成测试用例的完整方法。

参考文献:
【1】李小亮,丁晓明,尹然,梅莹.基于RDF图的测试用例生成【J】西南大学学报(自然科学版),2014,36(1):146-152.
【2】尹然,丁晓明,李小亮等.基于SA-BP神经网络的软件缺陷预测模型的研究【J】.西南师范大学学报(自然科学版),2013,38(8):147-152

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!