qileilove

          blog已經(jīng)轉(zhuǎn)移至github,大家請(qǐng)?jiān)L問(wèn) http://qaseven.github.io/

          開(kāi)發(fā)環(huán)境及TTCN-3的Hello World

          字體:        | 上一篇 下一篇 | 打印  | 我要投稿  | 推薦標(biāo)簽: 軟件開(kāi)發(fā) TTCN

            本文一步一步介紹開(kāi)發(fā)TTCN-3 Hello World程序的方方面面。
            博主的系統(tǒng)環(huán)境
            1、Windows XP SP3
            2、MS Visual C++ 2008,(對(duì)應(yīng)IDE需要用到Visual的一個(gè)批處理文件)
            3、IDE:IBM Rational System Tester 3.3
            1,2兩點(diǎn)就不說(shuō)啦,IBM這個(gè)工具是個(gè)商用軟件,分Windows版和Linux版的,相關(guān)主頁(yè)在此:http://www-01.ibm.com/software/awdtools/ttester/
            3.3版本的還可以使用本地License文件,后續(xù)新版本的需要搭建一個(gè)局域網(wǎng)的License服務(wù)器,稍稍復(fù)雜一點(diǎn)。
            使用Tester開(kāi)發(fā),基本上是 TTCN-3完成測(cè)試腳步+C完成下層模塊 的架構(gòu),Tester能對(duì)TTCN-3進(jìn)行語(yǔ)法檢查,再將TTCN-3腳步轉(zhuǎn)成C語(yǔ)言代碼,再對(duì)整個(gè)項(xiàng)目進(jìn)行編譯生成可執(zhí)行文件。
            (lz支持采用正版軟件,雖然我覺(jué)得IBM這個(gè)工具做得挺不好用的)
            上面是IDE成功安裝后進(jìn)入看到的界面。比較有幫助的是右下角的Project Samples,里面有大概10個(gè)例子,值得看看,依葫蘆畫(huà)瓢。
            我們目前從新建項(xiàng)目開(kāi)始。
            依次選擇File->New->Project->TTCN project,項(xiàng)目名稱(chēng)HelloWorld,一路Next,選擇默認(rèn)的項(xiàng)目配置即可
            完成后項(xiàng)目的結(jié)構(gòu)圖如下,分為兩個(gè)文件夾,分別是ttcn與c文件


            右鍵HelloWorld.ttw,選擇Settings配置,注意在Build中要添上vsvars32.bat的正確路徑
            接下來(lái)在HelloWorld.ttcn文件中加入如下代碼
          module HelloWorld {
          function Hello(){
          log("Hello world !!");
          }
          control{
          //直接打印hello world
          log("Hello world !");
          //通過(guò)函數(shù)調(diào)用打印hello world
          Hello();
          }
          }
            接下來(lái)打開(kāi)t3tri_template.c文件,搜索triSAReset()與 triPAReset()函數(shù), 令函數(shù)返回TRI_OK
            然后點(diǎn)擊菜單欄上的分析(小勾),編譯(圓圈里面一個(gè)c),Build(兩個(gè)下箭頭),執(zhí)行(感嘆號(hào))
            打印出如下結(jié)果
          Running executable...
          "Target\HelloWorld.exe"   -t3rt "+log -v 2 -lrtconf" -t3rt "-confbool t3rt.logging.builtin.pretty_print true"
          Establishing connection with Test Management...
          Connected to Test Management.
          Telelogic Tester test suite started.
          Waiting for commands ...
          HelloWorld.ttcn (6): [CPC] scope_entered: control
          HelloWorld.ttcn (8): [CPC] ttcn3_message: LOG Hello world !
          HelloWorld.ttcn (11): [CPC] function_call: Hello() return <undefined>
          HelloWorld.ttcn (2): [CPC] scope_entered: Hello() return <undefined>
          HelloWorld.ttcn (3): [CPC] ttcn3_message: LOG Hello world !!
          HelloWorld.ttcn (3): [CPC] scope_left: Hello() return <undefined>
          HelloWorld.ttcn (11): [CPC] scope_left: control
          [final] MESSAGE   Test case summary:
          [final] MESSAGE
          [final] MESSAGE   none          0 (0%)
          [final] MESSAGE   pass          0 (0%)
          [final] MESSAGE   inconc        0 (0%)
          [final] MESSAGE   fail          0 (0%)
          [final] MESSAGE   error         0 (0%)
          [final] MESSAGE
          [final] MESSAGE   total         0
            HelloWorld程序分析:
            上面就是在IBM工具中完成首個(gè)TTCN-3項(xiàng)目的流程,這個(gè)HelloWorld與其它語(yǔ)言比較起來(lái)還是略復(fù)雜的,但是從這個(gè)例子里面我們可以看出下面幾點(diǎn):
            1、TTCN的語(yǔ)言特性,module,模塊是TTCN3中范圍最大的單元(其他的都需要包含在Module中).
            一個(gè)Module包含兩個(gè)部分:Module定義和Module控制,這兩個(gè)部分都是可選的,也就是說(shuō)一個(gè)Module中可以是空的,沒(méi)有任何東西
            2、適配文件,例如本例子里面的兩個(gè)c文件,光有TTCN-3代碼是跑不起來(lái)的,需要將TTCN-3與下層代碼聯(lián)和編譯才能執(zhí)行
            3、結(jié)果打?。航K端把一步一步的執(zhí)行結(jié)果都打印出來(lái)了,最后還有測(cè)試的總結(jié),TTCN系統(tǒng)是為測(cè)試而準(zhǔn)備的。
          相關(guān)文章:

          posted on 2013-12-04 11:11 順其自然EVO 閱讀(605) 評(píng)論(0)  編輯  收藏


          只有注冊(cè)用戶(hù)登錄后才能發(fā)表評(píng)論。


          網(wǎng)站導(dǎo)航:
           
          <2013年12月>
          24252627282930
          1234567
          891011121314
          15161718192021
          22232425262728
          2930311234

          導(dǎo)航

          統(tǒng)計(jì)

          常用鏈接

          留言簿(55)

          隨筆分類(lèi)

          隨筆檔案

          文章分類(lèi)

          文章檔案

          搜索

          最新評(píng)論

          閱讀排行榜

          評(píng)論排行榜

          主站蜘蛛池模板: 炎陵县| 罗城| 九寨沟县| 浦东新区| 岳阳市| 教育| 兰考县| 法库县| 顺平县| 阳泉市| 海宁市| 上杭县| 泗洪县| 丰原市| 探索| 迭部县| 昭觉县| 宜春市| 吉林省| 台北县| 新泰市| 任丘市| 云阳县| 临邑县| 隆德县| 浮梁县| 夏河县| 长岭县| 廉江市| 大化| 景德镇市| 舒城县| 郁南县| 合阳县| 延庆县| 蒙阴县| 老河口市| 乌恰县| 固原市| 泾川县| 吴忠市|