作者dieannie (残影心痕)
看板CSSE
标题Re: [问题] Model-based Testing与Unit Testing的差异
时间Wed Jul 25 17:31:20 2007
※ 引述《qrtt1 (愚人)》之铭言:
: ※ 引述《H45 (!H45)》之铭言:
: : 功能,针对不同的需求与功能先设计好每个测试案例 (test case), 如此一来,在开发整
: : 个系统的时候,就只要对每个 test case 负责就好了,只要通过每个 test case 的测试
: : ,大概就可以说软体已经开发完毕了?
: : 请问这样有答对吗?
: test case 里面可以没有 assert 那就全过拉 :P
: 所以通常会搭配 coverage 一起看
最近我们有在k Model-based testing的书耶,因为我们接的计画和它有关,
看到版上有人在讨论,想来发表一下目前看的心得。
我是看一本叫Practical Model-based testing的原文书,里面介绍了很多的
方法与工具,而会想做model-based testing的原因是希望能够在还未进行
coding时,就能先测试问题出来,所以应该是在PIM层次做测试,但是碍於没有
试用版的软体可以跑,所以目前只是纸上谈兵,书上内容介绍的流程如下:
1.需求文件的分析 注:SUT-->system under test
2.产生所需的use cases
3.根据2.产生class diagram,并选定主要的测试类别,以stereotype<<SUT>>标示,
并以stereotype<<events>>标示主要的public operation,此class diagram会比
实际系统的class diagram要精简
4.针对SUT的class转成UML state machine,并辅以OCL来表达,然後使用LEIRIOS的
LTG/UML工具将state machine作为输入,以致output能产生出test cases
5.设定一个测试的initial state,因此会产生出一个object diagram,(这个物件图
不知是不是由工具所产生,还是由人工去从类别图instantiate出来??),接下来
再设定transition-based coverage criteria以及data-based coverage criteria
等等,最後会产生出一组test cases
6.将所产生的test cases转换成executable test scripts,书上介绍三种方法,
adaptation、transformation、mixed(结合前面两种),而这里书上主要是介绍
ruby on rails,也就是可以产生出ruby test scripts并执行测试,此外,在书中
的个案研究中,作者有使用另一套叫expect test tool去做转换,转出来好像是
叫Tcl的script,(在此我不知是否LTG/UML这套tool都有支援??)
以上大概是目前我看的内容,其实作者还有探讨其它的分析方法及表达法,只是那
些东东我们不会采用,所以有些内容就skip掉了,不知版上有没有人目前正在研究
这一块的,可以提出来一起讨论~~
--
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 140.117.178.141