基于uml顺序图的场景测试用例生成方法

基于uml顺序图的场景测试用例生成方法

ID:23653055

大小:54.00 KB

页数:8页

时间:2018-11-09

基于uml顺序图的场景测试用例生成方法_第1页
基于uml顺序图的场景测试用例生成方法_第2页
基于uml顺序图的场景测试用例生成方法_第3页
基于uml顺序图的场景测试用例生成方法_第4页
基于uml顺序图的场景测试用例生成方法_第5页
资源描述:

《基于uml顺序图的场景测试用例生成方法》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库

1、基于UML顺序图的场景测试用例生成方法摘要本文提出了一个基于UML顺序图的场景测试方法,它以UML顺序图为主要测试模型,结合类图和状态图生成所有的测试场景,然后找到与每一场景相关的环境条件并将它与方法序列、输入、输出合理组合作为覆盖该场景的测试用例。该方法完全基于UML,而且生成的测试用例数量少,减少了测试工作量。关键词UML顺序图;场景测试;测试用例;自动测试0引言本文提出了一个基于UML模型图来测试场景的方法,它以顺序图为主要测试模型,结合类图和状态图导出所有的场景,并将与场景相关的环境条件与方法序列、输入、输出合理组合作为覆盖该场景的测试用例。我们的工作具有两方面的优点:测

2、试方法完全基于UML模型,以便已经使用UML的软件系统能方便地采用,另一方面生成的测试用例数量少,减少工作量。1实例本文以DHCP[2]作为一个实例,使用UML的类图、状态图和顺序图[3]来说明我们提出的一个场景测试用例生成方法。DHCP是由IETF进行标准化的一个协议,提供一种动态指定IP地址和配置参数的机制。我们选取了DHCP协议的一个子集,协议的一般过程如下:1.客户端广播一个DHCP_DISCOVER消息。2.每个具有网络地址的服务可能响应一个DHCP_OFFER消息,如果都没有响应,则表示超时失败。3.如果客户端接收到一个或多个DHCP_OFFER消息,则选择其中一个,

3、然后广播一条DHCP_REQUEST消息给所有的服务器,并附上选择参数及指明哪一个服务器。4.所有服务器接收到客户的广播信息,只有被选中的服务器才绑定地址给这个客户,并发送确认消息DHCP_ACK,连接成功;如果要求的地址不可得(可能分配给其它用户),则服务器发送一个DHCP_NAK给客户,连接失败。图1显示了DHCP协议的部分类图。图1DHCP的部分类图图2是实例中请求IP的顺序图。图2请求IP的顺序图图3是DHCP中Server类的状态图。图3DHCP-Server状态图2UML顺序图的一个形式化定义为了能在测试中找出所有的场景,下面给出顺序图的形式化定义:定义1(顺序图)顺

4、序图SD可以表示为一个六元组:SD=<O,M,E,→,msg,obj>,其中:●O={O1,O2,…,Om},是对象的集合。O1,O2,…,Om都是顺序图中的对象。●Mguard´message´name´parameter_list,是消息的集合。顺序图中的每一个消息都形如:“[卫士条件]消息名(参数)”。●E=M{s,r},是事件集合。事件是指消息的发送和接收。对于消息msg,发送事件用<msg,s>表示,接收事件用<msg,r>表示。顺序图中所有发送消息事件的集合记为S,所有接收消息事件的集合记为R。S

5、ÇR=Æ,SÈR=E。●→是消息集合M上的一个全序关系,表示顺序图中的消息在纵向时间轴上的先后关系。●msg是从E到M的一个函数关系,msg(e)M表示事件e所对应的消息。●Obj是从E到O的一个函数关系,obj(e)O表示时间e所对应的对象。对象Oi上所有事件的集合记为Ei,EI={e

6、eEÙobj(e)=Oi}。在如图4所示的顺序图中:O={obj1,obj2,obj3};M={m1,m2,m3};E={(m1,s),(m1,r),(m2,s),(m2,r),(m3,s),(m3,r)};→=m1→m2→m3.图4一个简单

7、的顺序图顺序图主要描述了对象间发送消息的时间顺序。我们用符号‘<<’来表示事件间的先后关系,它满足如下三个性质:1.对同一消息而言,发送事件先于接收事件。2.在同一对象的生命线上,若事件e1出现在发送事件e2的上方,则e1先于e2。3.在同一个对象的生命线上,如果接收事件e1出现在e2的上方,并且它们分别对应的发送事件也位于同一个对象的生命线上,则e1先于e2。‘<<’顺序关系是强制顺序关系,那么即使它们在顺序图的时间轴上存在先后关系,这两个事件实际发生的先后顺序也是不确定的。例如图4中,尽管(m1,r)在(m3,r)的上方,但是在系统实际运行中,由于m1

8、,m2,m3都是异步消息,因此(m1,r)并不一定先于(m3,r)发生,这是由于图形表示的局限性造成的。一个简单顺序图(不包括分支)刻画了系统运行的一个场景,其运行过程表现为一个事件的序列(e1,e2,…,em),其中事件ei+1在事件ei后发生(1≤i≤m-1)。由于事件之间存在强制顺序关系‘<<’,因此并不是所有事件序列都是顺序图允许的。而且,由于‘<<’并不是一个全序关系,所以一个顺序图的场景可能允许多个事件序列。可以用一个有向无环图(DAG)来表示

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。