首页>计算机>软件水平考试>复习指导>正文
软考辅导:基于UML顺序图的场景测试用例生成方法2

www.zige365.com 2008-11-30 13:43:01 点击:发送给好友 和学友门交流一下 收藏到我的会员中心
 2、UML顺序图的一个形式化定义

  为了能在测试中找出所有的场景,下面给出顺序图的形式化定义:

  定义1(顺序图)顺序图SD可以表示为一个六元组:SD=,其中:

  ◆O={O1, O2, …,Om},是对象的集合。O1, O2, …,Om都是顺序图中的对象。

  ◆M guard´message´name´parameter_list,是消息的集合。顺序图中的每一个消息都形如:“[卫士条件]消息名(参数)”。

  ◆E=M {s, r},是事件集合。事件是指消息的发送和接收。对于消息msg,发送事件用表示,接收事件用表示。顺序图中所有发送消息事件的集合记为S,所有接收消息事件的集合记为R。SÇR=Æ, SÈR=E。

  ◆→是消息集合M上的一个全序关系,表示顺序图中的消息在纵向时间轴上的先后关系。

  ◆msg是从E到M的一个函数关系,msg(e) M表示事件e所对应的消息。

  ◆Obj是从E到O的一个函数关系,obj(e) O表示时间e所对应的对象。对象Oi上所有事件的集合记为Ei,Ei={e | e EÙ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:一个简单的顺序图

  顺序图主要描述了对象间发送消息的时间顺序。我们用符号‘<<’来表示事件间的先后关系,它满足如下三个性质:

  1.对同一消息而言,发送事件先于接收事件。

  2.在同一对象的生命线上,若事件e1出现在发送事件e2的上方,则e1先于e2。

  3.在同一个对象的生命线上,如果接收事件e1出现在e2的上方,并且它们分别对应的发送事件也位于同一个对象的生命线上,则e1先于e2。

我要投稿 新闻来源: 编辑: 作者:
相关新闻
软考辅导:职业前景深度分析之软件测试工程师1
软件水平考试:职业前景深度分析之软件测试工程师2
IT的新奶酪:关于IT监理市场发展的分析1
IT的新奶酪-IT监理市场发展的分析[2]
软件设计师复习综合辅导-检错码CRC