分享
 
 
 

U2TP分析

王朝other·作者佚名  2006-01-09
窄屏简体版  字體: |||超大  

U2TP分析

Johnny.Deng

U2TP是基于UML2.0的测试建模语言,可以用于从单元测试到系统集成测试的各个级别的测试建模。它基于MOF,可以独立于UML使用。

四个逻辑概念组织起来共同构成了U2TP:Test architecture/Test data/Test behavior/Test time。Test architecture 指定了U2TP的结构;Test behavior 指定了U2TP的行为;Test data 是代表了贯穿U2TP测试行为始终需要的数据;Test time 是对U2TP测试行为的量化。

以下说明U2TP各部分的语义:

1) 测试配置:

首先,通过Test Configuration配置一个测试的系统:被测系统(SUT)、测试组件(Test Component)通过定义的接口彼此联系,相互交互,他们联系的接口必须遵循某种Coding rule,诸如XML、COBAR、IIOP、ANS.1;同时存在各式各样的组件(Utility Part),诸如表征测试系统特性的组件,他们起到辅助测试的目的,它的一个典型实例就是ATM测试中的ATM磁卡。

各个Test Component之间也根据测试的实际相联系,每个Test Component 是一个独立的测试系统,具有各自的测试Verdict。

Verdict是对被测系统正确性的评价结果,他有四个预定义值:Pass、Inconclusive(测试结果不确定)、Fail(测试结果与期望结果不一致)、Error(测试系统有错误或者异常)。Verdict由Arbiter评价得到,Arbiter是每个测试用例(Test case)或者测试上下文(Test context)中的一个聚集部分,它的评价标准具有默认实现,也可以用户定义。Verdict与Stimulus和Observation不同,Stimulus是一次测试的输入,Observation是测试的结果值,他们都是以Test Data的形式存在与Test Pool中的,而Verdict则是Arbiter根据Observation值再判断的评价结果,是将Observation与期望结果比较后的结论,不是Test Data。

SUT与Test Components的联系基本构成了U2TP的静态的结构(配置好的测试系统),Test context则以这个组合结构为基础控制测试的实施,一个Test Context包含了诸如Test case的集合,Arbiter实例,SUT实例,以及对Test case的执行控制等测试细节。

2) 测试实施:

Test context中包括Test case的集合,它是测试实施的基础,而对测试动作的全面控制必须归公于其下的Scheduler,Scheduler清楚每个时刻、每个测试点上存在的Test Components,它控制Test Components的创建和销毁,它知道Test Components参与的Test cases,它的实现通过startTestCase()来开始一个测试用例,通过finishTestCase(tc:TestComponent)来记录Test Componets执行的结束,并最后通知Arbiter来评估此次测试,另外,它也通过createTestComponent(tc:TestComponent)来记录被Test Component创建的Test Component。

每个被Scheduler开始的Test Case定义了测试的行为特征,它指定了Test Components和SUT之间交互目标(下图解释了Test Objective)和交互实现手段,Test case执行交互是建立在Test configuration基础上,执行交互的最终结果就是一个Verdict,Test case的一次执行过程中可以通过设置Timer来对控制测试的行为,甚至在适当的时候中断Test case,例如:当一个设置的Timer超过预舍的期限时,它会产生一个timeout的时间事件,这个事件仅被送到Timer的所有者。

同时,各个Test Component的协调与同步是一个问题(尤其在分布式测试中),这可以通过TimeZone来定制,规定每个Test Components属于至多一个timezone,在同一个timezone中的Test Components具有同样的时间特性,即它们是同步的。

Test case的执行过程中的数据通过Test Data来定义,它规定了SUT的Stimuli、Observations,以及Test Components的同步,其中,Data Pool中包含Data Partitions或者显示的数据,是反复测试的基础,他们通过Data Selector提供的不同数据选择策略被挑选出来。

Default是测试行为重要组成部分,是对SUT标准、预期测试行为的补充,如果在一个测试执行过程中,观察到一个未预期的测试行为,这个行为不能被描述时,就可以应用默认处理(Default)。Default被定义成多层,它们的处理过程总是从最里向最外扩展。

测试过程还包括诸如:FinishAction、LogAction的测试动作和Test Log。

ValidWithdrawal测试的目标就是WithdrawMoney

3) 元模型

4) 问题及思考

1. Test Control 与Scheduler的功能上差异,个人认为Test Control只是抽象的概念,对测试控制的统称,真正实现测试控制的是Scheduler?

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
2023年上半年GDP全球前十五强
 百态   2023-10-24
美众议院议长启动对拜登的弹劾调查
 百态   2023-09-13
上海、济南、武汉等多地出现不明坠落物
 探索   2023-09-06
印度或要将国名改为“巴拉特”
 百态   2023-09-06
男子为女友送行,买票不登机被捕
 百态   2023-08-20
手机地震预警功能怎么开?
 干货   2023-08-06
女子4年卖2套房花700多万做美容:不但没变美脸,面部还出现变形
 百态   2023-08-04
住户一楼被水淹 还冲来8头猪
 百态   2023-07-31
女子体内爬出大量瓜子状活虫
 百态   2023-07-25
地球连续35年收到神秘规律性信号,网友:不要回答!
 探索   2023-07-21
全球镓价格本周大涨27%
 探索   2023-07-09
钱都流向了那些不缺钱的人,苦都留给了能吃苦的人
 探索   2023-07-02
倩女手游刀客魅者强控制(强混乱强眩晕强睡眠)和对应控制抗性的关系
 百态   2020-08-20
美国5月9日最新疫情:美国确诊人数突破131万
 百态   2020-05-09
荷兰政府宣布将集体辞职
 干货   2020-04-30
倩女幽魂手游师徒任务情义春秋猜成语答案逍遥观:鹏程万里
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案神机营:射石饮羽
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案昆仑山:拔刀相助
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案天工阁:鬼斧神工
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案丝路古道:单枪匹马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:与虎谋皮
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:李代桃僵
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:指鹿为马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:小鸟依人
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:千金买邻
 干货   2019-11-12
 
推荐阅读
 
 
 
>>返回首頁<<
 
靜靜地坐在廢墟上,四周的荒凉一望無際,忽然覺得,淒涼也很美
© 2005- 王朝網路 版權所有