版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、TTCN-3工具培訓(xùn),1,簡(jiǎn)介,本膠片介紹了使用TTCN-3進(jìn)行測(cè)試的系統(tǒng)架構(gòu),重點(diǎn)講述了TTCN-3的語法和特性,最后介紹如何使用TTCN-3集成開發(fā)工具GTR進(jìn)行TTCN-3測(cè)試套的開發(fā)。希望對(duì)準(zhǔn)備在開發(fā)環(huán)境GTR下進(jìn)行TTCN-3測(cè)試套開發(fā)的測(cè)試人員有所幫助。,2,TTCN-3概述,3,TTCN-3,TTCN-3:測(cè)試與測(cè)試控制記法(TestingandTestControlNotation-Version3),TTCN-3是由ETSI(歐盟通訊標(biāo)準(zhǔn)研究院)所設(shè)計(jì),并公布成為ETSIES201873系列之標(biāo)準(zhǔn)文件,以及ITU-T(國(guó)際通訊聯(lián)盟)的ITU-TRec.Z.140系列之標(biāo)準(zhǔn)文件
2、。標(biāo)準(zhǔn)化的測(cè)試描述和測(cè)試實(shí)現(xiàn)語言。TTCN-3具有更精準(zhǔn)的測(cè)試邏輯語法,可以描述更復(fù)雜的測(cè)試行為;TTCN-3可用于多種類型的測(cè)試,包括符合性測(cè)試(ConformanceTesting)、互操作性測(cè)試(InteroperabilityTesting)、健全性測(cè)試(RobustnessTesting)、回歸測(cè)試(RegressionTesting)、系統(tǒng)和整合測(cè)試(SystemandIntegrationTesting)、以及負(fù)載測(cè)試(Load/StressTesting)。,4,TTCN發(fā)展,TTCN-1概念始于80年代中期,主要應(yīng)用于OSI體系協(xié)議一致性測(cè)試。TTCN-2是樹表結(jié)合記法,有完
3、善的語法、語義,較高的測(cè)試抽象性和重用性,不依賴于操作系統(tǒng)和測(cè)試平臺(tái)。TTCN-3打破了TTCN-2在OSI體系一致性測(cè)試的局限性,適應(yīng)于更靈活、更復(fù)雜的軟件系統(tǒng)測(cè)試。,5,TTCN-3主要特性,描述動(dòng)態(tài)并發(fā)測(cè)試配置的能力;基于過程的操作和基于消息的通信;描述編碼信息和其他屬性(包括用戶擴(kuò)展性)的能力;描述數(shù)據(jù)和帶有強(qiáng)有力的匹配機(jī)制的屬性模板的能力;類型和值的參數(shù)化;賦值和測(cè)試判定的處理;測(cè)試套參數(shù)化和測(cè)試?yán)x擇機(jī)制;TTCN-3和ASN.1的結(jié)合良好定義的語法,格式的互換以及靜態(tài)語義;不同的表示格式(如:表格和圖形表示格式,目前暫不支持);,6,TTCN-3語法介紹,7,基本概念,基本概念-
4、測(cè)試組件:共有三種類型測(cè)試組件:抽象測(cè)試系統(tǒng)接口(ATSI),也可以叫系統(tǒng)測(cè)試組件(STC)主測(cè)試組件(MTC)并行測(cè)試組件(PTC),8,基本概念-通信端口通過端口完成測(cè)試組件之間的通信每個(gè)通信端口被抽象成一個(gè)先入先出隊(duì)列端口(port)具有方向性(in,out,inout)支持三種端口類型:基于消息通信的端口基于過程通信的端口混合型端口,9,基本概念-動(dòng)態(tài)測(cè)試配置創(chuàng)建組件啟動(dòng)組件并發(fā)執(zhí)行,10,基本概念-動(dòng)態(tài)測(cè)試配置連接端口映射端口,11,基本概念-測(cè)試判決測(cè)試判決:nonepassinconcfailerror每一個(gè)測(cè)試組件可以設(shè)置(setverdict)或者獲取(getverdict)
5、自己的局部判決。測(cè)試用例中止執(zhí)行時(shí),返回一個(gè)全局的判決。全局判決由各個(gè)測(cè)試組件的局部判決決定。,12,TTCN-3測(cè)試套結(jié)構(gòu),模塊(Module)是TTCN-3的基本構(gòu)造塊。一個(gè)模塊由定義部分(可選的)和一個(gè)模塊控制部分(可選的)組成。通常所說的一個(gè)測(cè)試套就是一個(gè)模塊。模塊可以參數(shù)化(跟TTCNRunner中的賦值一致)。一個(gè)模塊可以從其他模塊中引入定義。模塊可以定義屬性(Attributes)。,13,模塊定義部分,14,模塊定義所有定義在整個(gè)模塊中都是全局的。類型定義(DataTypes)都是基于預(yù)定義類型和結(jié)構(gòu)類型(包括從其他非TTCN-3語言ASN.1定義中引入的類型)模板(Templ
6、ates)和原型(Signature)定義測(cè)試數(shù)據(jù)。端口(ports)和測(cè)試組件(Components)在動(dòng)態(tài)測(cè)試配置過程中使用。函數(shù)(Functions),測(cè)試步(Altsteps),測(cè)試用例(testcase)用來定義測(cè)試行為。,15,TTCN3數(shù)據(jù)類型定義,16,數(shù)據(jù)類型定義-整型,/*整型范圍約束定義*/typeintegerMyIntegerRange(1.100)typeintegerMyIntegerRange(0.infinity)/*整型列表約束定義*/typeintegerMyIntegerList(1,2,3,4)/*混合約束定義*/typeintegerMyIntege
7、rListAndRange(1.5,7,9),17,數(shù)據(jù)類型定義-結(jié)構(gòu)類型,/record結(jié)構(gòu)類型定義typerecordMyMessageTypeintegerfield1optional,booleanfield2/record值定義varMyMessageTypeMyMessage:=field1:=1,field2:=true/單獨(dú)的域賦值MyMessage.field2:=false,18,數(shù)據(jù)類型與ASN.1類型兼容,19,數(shù)據(jù)定義模板模板(Templates)用于傳送一個(gè)特定值的集合或是測(cè)試接收的值的集合是否與模板說明匹配。模板具有以下特性:模板可繼承,便于組織數(shù)據(jù)和重復(fù)利用數(shù)據(jù)
8、模板能夠被參數(shù)化模板允許定義匹配機(jī)制,經(jīng)常被使用來定義可能接收消息的值或者可能的遠(yuǎn)程調(diào)用過程響應(yīng)模板同時(shí)支持基于消息的通信和基于過程的通信模板支持簡(jiǎn)單類型和復(fù)合類型,20,數(shù)據(jù)定義模板匹配機(jī)制,21,數(shù)據(jù)定義參數(shù)化模板,/參數(shù)化模板templateMyMessageTypeMyMessage(integerMyPar):=field1:=MyPar,field2:=true,field3:=110011B/模板調(diào)用P1.send(MyMessage(1);,22,數(shù)據(jù)定義模板繼承,templateMyMessageTypeMyMessage1field1:=123,field2:=truete
9、mplateMyMessageTypeMyMessage2modifiesMyMessage1field2:=false/等效下面的寫法templateMyMessageTypeMyMessage3field1:=123,field2:=false,23,動(dòng)態(tài)測(cè)試配置,動(dòng)態(tài)測(cè)試配置測(cè)試組件測(cè)試組件(TestComponent)是測(cè)試行為執(zhí)行的實(shí)體(并行)。測(cè)試組件的聲明都是局部的。測(cè)試組件必須包含一個(gè)通信端口列表。在測(cè)試執(zhí)行過程中是通過create,connect,map等操作來完成動(dòng)態(tài)測(cè)試配置的。,TestComponent,24,動(dòng)態(tài)測(cè)試配置通信端口定義,/基于消息的端口定義typepor
10、tMyMessagePortTypemessageinMsgType1,MsgType2;outMsgType3;inoutinteger/基于過程的端口定義typeportMyProcedurePortTypeprocedureoutProcedureSignature1,ProcedureSignature2,25,動(dòng)態(tài)測(cè)試配置測(cè)試組件定義,/測(cè)試組件類型定義typecomponentMyComponentType/局部變量聲明varintegerMyVar;timerMyTimer;/測(cè)試組件使用的端口列表MyMessagePortTypeP1,P2;MyProcedurePortTyp
11、eP3,26,測(cè)試行為描述,測(cè)試行為描述-函數(shù)函數(shù)是描述測(cè)試行為的基本塊。函數(shù)包含局部變量聲明和程序部分。函數(shù)既可以只完成測(cè)試系統(tǒng)內(nèi)部的任務(wù),也可以通過send和receive與被測(cè)系統(tǒng)進(jìn)行交互。支持外部函數(shù)(可擴(kuò)展)。支持部分類型轉(zhuǎn)換的預(yù)定義函數(shù)。,Function(.),27,預(yù)定義函數(shù)預(yù)定義函數(shù)提供了TTCN-3內(nèi)部類型之間的轉(zhuǎn)換功能以及字符串操作功能。,28,/函數(shù)可以帶參數(shù),參數(shù)具有幾種屬性:in,out,inout.默認(rèn)屬性是in。functionMyFunction(inintegerMyPar):/函數(shù)可以帶返回值,默認(rèn)為voidfunctionMyFunctionreturn
12、integer:,29,/純功能函數(shù),沒有涉及到端口操作。functionMyFunction:/函數(shù)使用指定類型組件中的端口進(jìn)行通信操作functionMyFunctionrunsonMyPTCPCO1.send(1);,30,測(cè)試行為描述測(cè)試用例測(cè)試用例可以認(rèn)為是特殊的能夠在模塊控制部分執(zhí)行的函數(shù)。接口部分(runson子句)指定了測(cè)試用例所運(yùn)行的MTC的組件類型。系統(tǒng)部分(system子句)指定了測(cè)試用例中需要使用的測(cè)試系統(tǒng)接口組件類型。System部分可以省略,默認(rèn)和MTC類型一致,TestCase(.),31,testcaseMyTestCase()runsonMyMTCTypesy
13、stemMyTestSystemType:/定義測(cè)試行為/該用例只有包含MTC,沒有涉及系統(tǒng)接口操作testcaseMyTestCase()runsonMyMTCType:/定義測(cè)試行為,32,測(cè)試行為描述基本編程語句,33,測(cè)試行為描述動(dòng)態(tài)測(cè)試配置,34,/定義一個(gè)組件類型變量varMyComponentTypeMyPTC;/創(chuàng)建指定類型的組件,返回組件引用MyPTC:=MycomponentType.create/connect連接操作用來完成測(cè)試系統(tǒng)內(nèi)部組件之間的通信connect(MyPTC:P1,mtc:P1)/map映射操作用來完成測(cè)試組件與抽象測(cè)試接口之間的通信map(MyPTC
14、:P2,system:PCO),35,測(cè)試行為描述選擇性行為選擇性行為由alt語句來完成。alt語句表示,由通信的接收和處理或定時(shí)器事件以及并行測(cè)試成分終止引起的測(cè)試行為的分支。alt語句表示將與一個(gè)特定快照相匹配的可能的集合。,S1;altS3;S6;S2;altS4;S7;S5;S8;altS9;S10;,36,測(cè)試行為描述alt語句執(zhí)行示意圖每個(gè)alt分支包含三部分:布爾防衛(wèi)表達(dá)式(可能為空,但是不能省略)可能觸發(fā)的事件需要執(zhí)行的操作語句每進(jìn)入一個(gè)alt語句時(shí),就會(huì)照一張快照,guard1,event1,alt,37,測(cè)試行為描述可選步可選步(Altsteps)用來描述默認(rèn)行為,或構(gòu)造一
15、個(gè)alt語句的選擇對(duì)象??蛇x步可以調(diào)用函數(shù)和可選步,或作為默認(rèn)來激活可選步。可選步的調(diào)用可以通過默認(rèn)機(jī)制隱式地完成,或是通過在alt的一個(gè)直接調(diào)用顯式的完成。對(duì)于借助于默認(rèn)機(jī)制的可選步的一個(gè)隱式調(diào)用,在到達(dá)調(diào)用位置之前,必須通過activate語句將該可選步激活為一個(gè)默認(rèn)。獨(dú)立的可選步的調(diào)用可以認(rèn)為是僅帶有一個(gè)描述顯式調(diào)用該可選步的選擇對(duì)象的alt語句的簡(jiǎn)寫。,38,AltstepMyAltstep(inintegervar1)runsonMyComponentTypeMyPort.receive(MyMessage1)setverdict(pass);MyPort.receive(MyMes
16、sage2)repeat;MyTimer.timeoutstop;,39,/在alt語句中可選步的顯示調(diào)用。AltMyPort.receive(MyMessage1)setverdict(pass);MyAltstep(1);MyTimer.timeoutstop;,40,/獨(dú)立調(diào)用的可選步MyAltstep(1);/等效于AltMyAltstep(1);,41,/一個(gè)可選步激活為默認(rèn)vardefaultMyDefVarTwo:=activate(MySecondAltStep();/該組件在此區(qū)間的所有alt語句都會(huì)在分支沒有被選中的情況下會(huì)執(zhí)行默認(rèn)可選步。/一個(gè)默認(rèn)可選步去激活deacti
17、vate(MyDefVarTwo);/此后的所有alt語句都會(huì)在分支沒有被選中的情況下不會(huì)執(zhí)行默認(rèn)可選步。,42,測(cè)試行為描述定時(shí)器,43,/啟動(dòng),停止,讀取定時(shí)器MyTimer.start(20E-3);/默認(rèn)的時(shí)間單位是sMyTimer.stop;MyVar:=MyTimer.read;/檢查定時(shí)器是否還在運(yùn)行if(MyTimer.running)/定時(shí)器超時(shí)AltMyTimer.timeout,44,模塊控制部分,45,模塊控制部分測(cè)試?yán)x在模塊定義部分,而模塊控制部分管理它們的執(zhí)行。在每個(gè)測(cè)試?yán)龁?dòng)時(shí),測(cè)試配置將被重新設(shè)置。如果要在行為定義中使用定義在一個(gè)模塊控制部分的所有的變量、定
18、時(shí)器等,應(yīng)該通過參數(shù)化來將它們傳入測(cè)試?yán)?,沒有全局變量的概念。可以使用布爾表達(dá)式選擇和去選擇要執(zhí)行的測(cè)試?yán)?Control,46,/執(zhí)行MyTestCase1,不存儲(chǔ)返回的測(cè)試判定和時(shí)間監(jiān)管execute(MyTestCase1();/執(zhí)行MyTestCase2,把結(jié)果判定存儲(chǔ)在變量MyVerdict中MyVerdict=execute(MyTestCase2();/執(zhí)行MyTestCase3,把結(jié)果判定存儲(chǔ)在變量MyVerdict中,如果測(cè)試?yán)?00ms內(nèi)沒有終止,MyVerdict將得到值error.MyVerdict=execute(MyTestCase3(),0.5);,47,/測(cè)試用例多次執(zhí)行。while(x10)x:=x+1;execute(MyTestCase();/在特定的條件下,測(cè)試用例執(zhí)行。if(MySelectionExpression)execute(MyTestCase();,48,TTCN3測(cè)試套開發(fā),49,TTCN-3測(cè)試系統(tǒng)組成,測(cè)試管理器:工程管理,用例管理,腳本編輯,日志輸出測(cè)試執(zhí)行環(huán)境:腳本編譯執(zhí)行被測(cè)系統(tǒng)適配器:測(cè)試執(zhí)行環(huán)境與被測(cè)系統(tǒng)間的通信適配編解碼器:BER,PER,SIPABNF,XML編解碼平臺(tái)適配器:用戶自定義擴(kuò)展函數(shù)實(shí)現(xiàn),50
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 酒店宴會(huì)微站租賃合同
- 消防設(shè)施水電路施工合同
- 學(xué)校返聘退休教師協(xié)議范本
- 鐵路隧道頂管施工合同
- 體育館建設(shè)項(xiàng)目招標(biāo)文件樣本
- 建筑工地易燃易爆物品使用守則
- 夏令營(yíng)活動(dòng)合同示范文本
- 文化創(chuàng)意墊資施工協(xié)議
- 勞動(dòng)合同管理與員工福利
- 學(xué)校物業(yè)安保人員聘用協(xié)議
- 拋石護(hù)岸工程施工方案及注意事項(xiàng)
- 完整解讀(勞動(dòng)課新課標(biāo))詳解《義務(wù)教育勞動(dòng)課程標(biāo)準(zhǔn)(2022年版)》全文內(nèi)容PPT課件
- 電廠面試問題集(完整版)
- 《種植我們的植物》優(yōu)秀課件PPT
- 多維閱讀Crazy Cat 課件
- 小學(xué)語文教學(xué)專題講座11278
- 航空服務(wù)禮儀課程標(biāo)準(zhǔn)
- WB36鋼種焊接工藝淺析
- 美國(guó)營(yíng)養(yǎng)標(biāo)簽標(biāo)示成分
- 外貿(mào)英文報(bào)價(jià)單模板
- 客服話術(shù)大全-
評(píng)論
0/150
提交評(píng)論