




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、第三章 樹表描畫言語 OSI/ITU組織公布的協(xié)議一致性測試根本框架和方法規(guī)范(ISO/IEC 9646 (ITU X.290 series)由五大部分構(gòu)成,樹表描畫言語(Tree Tabular Combine Notation or Testing and Test Control Notation)是其中的第三部分,即ISO/IEC 9646-3。 3.1 協(xié)議一致性測試框架UTIUTUnderLying ServiceLTASPsPDUs圖 3.1一致性測試體系構(gòu)造CTMFTCPPCOPCO IUT: 在一致性測試中一個被測試部分Implement Under Test簡稱IUT是一個
2、OSI協(xié)議實(shí)體。 SUT: IUT所在的系統(tǒng)稱為被測試系統(tǒng)System Under Test簡稱SUT。 UT和LT: IUT有一個上層測試Upper Test接口和下層測試(Low Test)接口。 PCO: 控制察看點(diǎn)Points of Control and Observation簡稱PCOs,UT和LT經(jīng)過控制察看點(diǎn)對系統(tǒng)進(jìn)展測試。通常LT是遠(yuǎn)程可訪問接口,因此IUT定義一個遠(yuǎn)端的PCO,即底層接口被設(shè)置在遠(yuǎn)端 。 輸入輸出隊(duì)列: 通訊被以為是異步通訊,所以在每一個PCO都對應(yīng)兩個隊(duì)列FIFO,一個是輸入,另一個是輸出。 ASPs: IUT和UT之間經(jīng)過籠統(tǒng)效力元語Abstract S
3、ervice Primitives簡稱ASPs進(jìn)展通訊。 PDUs: 從概念角度,IUT和LT經(jīng)過協(xié)議數(shù)據(jù)單元Protocol Data Units簡稱PDUs交換數(shù)據(jù); 兩者的聯(lián)絡(luò): 從實(shí)踐角度,PDUs 采用ASPs 對根本效力動作進(jìn)展編碼,即PDUs不是直接進(jìn)展交互,而是CTMF 允許根據(jù)PDUs的編碼進(jìn)展交互,即在一個籠統(tǒng)的測試中運(yùn)用PDUs進(jìn)展交換,所以ASPs與PDUs不再加以區(qū)分。 TCP: 測試協(xié)調(diào)過程Test Coordination Procedures 簡稱TCP來協(xié)調(diào)LT和UT的動作,這在LT和UT是兩個獨(dú)立的過程時非常必要 。 測試方法分類: 在CTMF中測試方法可分
4、為部分的、分布的、協(xié)調(diào)的和遠(yuǎn)程的測試幾種 。它們的主要不同是對LT和UT的協(xié)調(diào)以及對它們的控制與察看程度不同。 執(zhí)行過程形狀機(jī)Stable stateTest stateEnd state(Test Body)End State(Verification)postamblepreambleTest BodyVerification圖3-2 測試?yán)桨笀?zhí)行過程描畫 圖3.2是一個基于CTMF的測試過程。一個IUT首先由測試?yán)挠|發(fā)條件激活,并從穩(wěn)定形狀進(jìn)入被測試形狀;經(jīng)過測試用例在測試體中運(yùn)轉(zhuǎn),進(jìn)入終了形狀;假設(shè)執(zhí)行的結(jié)果不獨(dú)一,那么需求經(jīng)檢查步分析結(jié)果中存在的問題,從而進(jìn)入End StateV
5、erification形狀;根據(jù)檢查結(jié)果提出反響,進(jìn)入下一次的測試階段。在上面的測試過程中,假設(shè)測試?yán)慕K了形狀一樣,那么直接進(jìn)入到下一次測試過程。3.1.2 X-協(xié)議一致性測試結(jié)合CTMF的X-協(xié)議執(zhí)行腳本如下:MTCMaster Tester Component首先經(jīng)過產(chǎn)生PTCs(Parallel Tester Components)對測試系統(tǒng)進(jìn)展初始化。對于X-協(xié)議產(chǎn)生一個低端PTC(LT)和一個高端PTC(UT)。經(jīng)過IUT,低端PTC建立一個與高端PTC的一個X-銜接。出于簡單思索,我們假定一個N網(wǎng)絡(luò)銜接曾經(jīng)建立,即不會出現(xiàn)一個X_CONNECTrequest被回絕該假定是為了解釋
6、TTCN特性; 低端PTC發(fā)送一個數(shù)據(jù)包,該數(shù)據(jù)包將經(jīng)過IUT在高端PTC前往,這個數(shù)據(jù)包將在一個指定的時間間隔內(nèi)前往,該過程反復(fù)多次; 在完成數(shù)據(jù)傳送后,低端PTC斷開,并發(fā)送它的最初結(jié)果給MTC后,計(jì)算最終結(jié)論并終止測試。配置和相關(guān)描畫:LT將用N-SERVICE 元語和N-PDUs加以闡明,分別用N_DATArequest和CR_PDU等進(jìn)展闡明;/UT將用X-SERVICE元語加以闡明,運(yùn)用X_CONNECTrequest等進(jìn)展闡明;/TTCN提供了一個最小的功能集合 提供可以經(jīng)過測試系統(tǒng)發(fā)送和/或接納ASPs的才干;提供嵌在ASPs中PDUs的描畫才干;闡明ASPs在PCOs被發(fā)送和
7、/或被接納的次序;TTCN采用以下方法提供上述功能:聲明ASP和PDU的類型; 聲明PCOs闡明實(shí)踐的ASPs和PDUs闡明行為實(shí)例本測試?yán)倪\(yùn)用有兩種意義 :IUT在限定的時間內(nèi)經(jīng)過X-協(xié)議,接納并前往指定數(shù)量的數(shù)據(jù)包。 3.2 測試系統(tǒng)行為描畫測試?yán)c測試套:為了測試IUT,我們需求建立一個仿真測試事件集合或交互行動序列。這個用于描畫測試義務(wù)的事件或行動的序列稱為測試?yán)齮est case,一個特定協(xié)議的測試?yán)戏Q為測試套。TTCN闡明:TTCN就是一種用于闡明測試?yán)姆柤梢越⒁粋€實(shí)踐被測系統(tǒng)的籠統(tǒng)模型,并闡明測試?yán)膱?zhí)行過程?;\統(tǒng)的測試?yán)ㄒ磺械腎UT所支持的被測目的。 TT
8、CN表現(xiàn)方式: 在ISO/IEC 9646-3中定義了兩種TTCN的圖表,一種是圖形符號,另一種是語義符號。圖形符號采用表格的方式描畫測試?yán)膬?nèi)容。這種表現(xiàn)方式比較直觀,所以稱為TTCN-GR,它適宜于測試?yán)姆治雠c設(shè)計(jì)。語義符號采用巴氏克斯范式Backus-Naur Form簡稱BNF)方式闡明TTCN測試?yán)?,所以它更適宜于計(jì)算機(jī)處置,所以把這種方式的表示稱為TTCN-MP(TTCN-machine processable)。在本教材中主要采用TTCN-GR來描畫測試用例。3.2.1 行為樹定義:一致性測試框架下的測試只關(guān)懷控制與察看點(diǎn)上的交互,所以系統(tǒng)行為用一顆樹來表示比較自然,這棵樹就稱
9、之為行為樹。 行為樹語義:在行為樹中,每一個樹枝表示兩個協(xié)議形狀之間能夠發(fā)生交互。在TTCN中,為了與表格方式一致,把行為樹的分支隨著時間逐層橫向縮排,并寫在一個表框內(nèi)。TreeBCADIEFGHJABCFDGEJI圖3-3 TTCN行為樹TimeHTime序號 標(biāo)號 行為描述(聲明) 約束 結(jié)論注釋12345678910A C F G H D E I JB3.2.2 TTCN行為描畫行為表:在TTCN中,一切的行為用動態(tài)行為表來闡明。行為表類型:測試?yán)齽討B(tài)行為表測試步動態(tài)行為表缺省動態(tài)行為表 動態(tài)行為表構(gòu)成: 行號、標(biāo)簽、行為描畫、約束條件、結(jié)論、注釋 聲明行與聲明: 在一個動態(tài)行為表中,聲
10、明行在行為描畫欄中定義,它用于闡明事件發(fā)生順序 。在聲明行中描畫測試系統(tǒng)的行為,如發(fā)送和接受ASPs等等 聲明分成三個不同的類型事件行動條件 事件一個聲明的發(fā)生稱為事件。聲明成立也稱為事件匹配。兩類事件:輸入事件input events:是一個到達(dá)指定PCO的ASP,或者是指定CP協(xié)同點(diǎn)coordination points簡稱CP)的音訊。時間事件(timer events):是一個協(xié)議時間終了時辰。 事件包括:RECEIVE OTHERWISE TIMEOUT 行動 活動: 有時聲明總是成立的,也就是說它是可執(zhí)行的,我們把這種聲明稱之為活動 。 行動類型: SEND IMPLICIT_SE
11、ND /內(nèi)部交互,如Keep alive包 ASSIGNMENT_LIST TIMER_OPERATION GOTO 條件 聲明行也可以包括條件聲明,即布爾表達(dá)式,把這個聲明行稱為條件聲明行。假設(shè)沒有事件匹配,也就沒有行動被執(zhí)行,除非聲明行中的條件的值為True。假設(shè)一個聲明行不包括條件,那么為非條件聲明行。 一個TTCN條件就是布爾表達(dá)式:BOOLEAN_EXPRESSION 例如: L! N_DATArequest B=13.2.2.2 執(zhí)行與匹配交換:在同一縮排的聲明行的集合中,有一樣父節(jié)點(diǎn)的節(jié)點(diǎn)稱為可交換聲明行,簡稱交換。例如:在圖1-1中 (A,B), (C, D, E), (F,
12、G), (I, J) 和 (H)是一切的交換。闡明規(guī)那么:由于一個交換集合中不同交換的前后次序是非常重要的,所以必需把一切事件和條件在一個沒有激活的行動之前聲明。 行為樹的執(zhí)行 行為樹的執(zhí)行從樹根開場。首先第一個交換集合被循環(huán)執(zhí)行,每一個交換均以他們在集合中出現(xiàn)的先后次序被賦值。假設(shè)一個交換不勝利,那么執(zhí)行下一個交換;假設(shè)交換勝利,那么執(zhí)行該交換的下一級交換集。在執(zhí)行到葉結(jié)點(diǎn)后,該交換集合的循環(huán)停頓,這時將得出結(jié)論。 例子首先被執(zhí)行的是交換集合A,B。假設(shè)A勝利,那么下一個交換集合C,D,E被激活;假設(shè)A不勝利,B勝利,那么執(zhí)行終止。如今假定C和D不勝利,而E勝利,那么下一個交換集合是I,J。
13、留意:假設(shè)在恣意一個交換集合中沒有聲明是勝利的,那么執(zhí)行將“死鎖。3.3 TTCN數(shù)據(jù)類型和取值 數(shù)據(jù)類型的含義: TTCN所包含的數(shù)據(jù)類型用來闡明行為描畫中所涉及到的數(shù)據(jù),如在ASPs中數(shù)據(jù)類型闡明等等。 數(shù)據(jù)類型種類: 簡單類型定義表 構(gòu)造類型定義表一個類型定義運(yùn)用一個表3.3.1 預(yù)定義數(shù)據(jù)類型 TTCN的數(shù)據(jù)類型如下: HEX STRING/16進(jìn)制位串,如0FH BOOLEN INTEGER BIT STRING/位串,如1001B OCTET STRING/ASN.1 16進(jìn)制串,如0FO IA5String/Character String ENUMERATED/枚舉類型 OBJ
14、ECT IDENTIFIER/對象標(biāo)識符,由規(guī)范化組織定義的整數(shù)序列,如ttcn-standard OBJECT IDENTIFIER := iso (1) standard (0) 9646 3 REAL/用科學(xué)計(jì)數(shù)法表示的實(shí)數(shù),如10*2-2 NULL/空 其它ASN.1類型 取值: TTCN預(yù)定義數(shù)據(jù)類型的值與ASN.1數(shù)據(jù)類型的值具有一樣的取值范圍,參見ASN.1 。 簡單用戶定義類型 簡單用戶類型的定義,通常是對預(yù)定義數(shù)據(jù)類型或前面曾經(jīng)定義的用戶定義類型的進(jìn)一步闡明,這些闡明往往是施加一些約束。 TTCN的簡單用戶定義類型采用簡單類型定義表對數(shù)據(jù)類型進(jìn)展描畫,并可以在測試套中的任何地
15、方運(yùn)用 。3.3.4 構(gòu)造類型 TTCN有公用的表來定義構(gòu)造類型數(shù)據(jù)。構(gòu)造數(shù)據(jù)好像簡單數(shù)據(jù)類型一樣可以在測試?yán)娜魏我粋€地方運(yùn)用。但他們主要在ASPs和PDUs的子構(gòu)造中運(yùn)用。詳細(xì)細(xì)節(jié)參見ASPs 、PDUs和CM取值。3.4 PCOs和CPs TTCN支持異步通訊模型,在測試組件和被測軟件之間的通訊是經(jīng)過控制和察看點(diǎn)PCOs實(shí)現(xiàn)的,而不同測試組件之間是經(jīng)過測試協(xié)作點(diǎn)Coordination Points 簡稱CPs進(jìn)展交互。 3.4.1 通訊模型 隊(duì)列模型: 在通訊模型中,我們將運(yùn)用隊(duì)列模型描畫PCOs和CPs。每一個PCO/CP有兩個先進(jìn)先出的隊(duì)列,與程序中的隊(duì)列不同,這里的隊(duì)列沒有邊境。
16、 隊(duì)列構(gòu)成: 一個隊(duì)列用于存放發(fā)送SENDASP的對列 另一個用于存放接納RECEIVEASP信息 兩個隊(duì)列在一個PCO或CP進(jìn)展銜接 一個用于PCO/CP的輸入,另一個用于PCO/CP的輸出。3.4.2 發(fā)送一個ASP 發(fā)送一個ASP,是經(jīng)過SEND行作把一個ASP追加到PCO隊(duì)列中去。PCO的SEND隊(duì)列是無約束長度的隊(duì)列,所以它總可以接受來自于LT或UT的音訊。 3.4.3 接受(receipt)一個ASP 接受的含義: 一個有效的接受從RECEIVE隊(duì)列中取出ASP,并檢查其內(nèi)容。 普通接受有兩個步驟 : 接納ASP 檢查其內(nèi)容 3.4.4 聲明PCO類型 測試套中運(yùn)用的PCO類型必需
17、在PCO類型聲明中進(jìn)展。 每一個PCO類型聲明需求以下信息: PCO類型名 與PCO通訊的對象LT或UT 3.4.5 運(yùn)用PCOs和CPs 運(yùn)用規(guī)那么: 假設(shè)測試套僅運(yùn)用PCO,那么PCO名在TTCN聲明中可以省略。假設(shè)有多個PCO和CP被運(yùn)用,那么PCO和CP必需在TTCN聲明中加以闡明。3.4.6 PCO和CP快照 定義:在每一次交換循環(huán)的最初,從輸入隊(duì)列中取出PCO或CP的當(dāng)前值稱為一個快照。執(zhí)行過程:每一個聲明的值取決于這個快照,而不是PCO或CP隊(duì)列的實(shí)踐值。這樣交換被執(zhí)行的時間將會凍結(jié),即阻止兩個快照之間的事件發(fā)生。經(jīng)過這種方法一個ASP、PDU或CM的到達(dá)只需在快照更新后才被登記
18、。3.4.7 聲明CPs CPs在CP聲明表中聲明 每一個CP需求以下信息: CP名 CP角色 3.5 發(fā)送語句 TTCN行為樹中的主要行為之一是經(jīng)過PCO/CP向IUT發(fā)送ASPs或PDUs。下面我們討論發(fā)送(SEND)行為的描畫和運(yùn)用。 3.5.1 發(fā)送ASP 發(fā)送行為聲明允許一個測試套闡明一個經(jīng)過PCO發(fā)送的ASP類型。 發(fā)送語句格式如下: PCO_Identifier ! ASP_Identifier S E N D 3 Q U A L I F I E R 1 A S S I G N M E N T _ L I S T 2 TIMER_OPERATION4 3.5.2 執(zhí)行發(fā)送語句 執(zhí)
19、行過程: 假設(shè)一個條件QUALIFIER是FALSE,那么過程停頓,并且發(fā)送語句為假;假設(shè)QUALIFIER是TRUE,那么ASSIGNMENT_LIST被執(zhí)行。最后TIMER_OPERATION 被執(zhí)行。 例子: 例如:L! N_DATArequest /送網(wǎng)絡(luò)數(shù)據(jù)懇求效力原語給名為L的PCO L! N_DATArequest B=1 /假設(shè)B=1,那么執(zhí)行SEND L! N_DATArequest B=1 (X:=3) /假設(shè)B=1,那么把X賦值為3,并且執(zhí)行SEND3.5.3 發(fā)送一個PDU 發(fā)送描畫: 通常一個PDUs 數(shù)據(jù)被包含在ASPs中,在聲明SEND語句時并不顯式闡明。然而,并
20、不是一切的協(xié)議有效力定義如X.25,所以TTCN提供了顯式聲明PDUs的語句格式,而不用ASPs 。 一個發(fā)送PDU的語句如下: PCO_Identifier ! PDU_Identifie 該語句中還可以包含其它輔助信息,這些信息與PDU數(shù)據(jù)一同被處置,他們的闡明格式與規(guī)范SEND語句一樣。3.5.4 發(fā)送協(xié)同信息 發(fā)送語句也可以在CP上發(fā)送一條協(xié)同信息(Coordination Message簡稱CM)。格式如下: CP_Identifier ! CM_Identifier 該語句中還可以包含其它輔助信息,這些信息與CM數(shù)據(jù)一同被處置,他們的闡明格式與規(guī)范SEND語句一樣。3.6 接納語句
21、 接納語句是用于描畫一個測試組件從測試系統(tǒng)IUT接納音訊事件的根本語句。 3.6.1 接納ASP 接納語句的語法如下: PCO_Identifier ? ASP_Identifier R E C E I V E 1 Q U A L I F I E R 2 ( A S S I G N M E N T _ L I S T ) 3 TIMER_OPERATION4 3.6.2 執(zhí)行接納語句 執(zhí)行過程: 語句的行號具有時間性質(zhì),它表達(dá)了語句執(zhí)行的先后次序。通常一個接納語句的執(zhí)行次序?yàn)椋杭僭O(shè)一個條件QUALIFIER是FALSE,那么過程停頓,并且接納語句為假;假設(shè)QUALIFIER是TRUE,那么AS
22、SIGNMENT_LIST被執(zhí)行。最后TIMER_OPERATION 被執(zhí)行。 例子: L? N_DATArequest/一個網(wǎng)絡(luò)數(shù)據(jù)懇求效力原語在名為L的PCO匹配 L? N_DATArequest B=1/一個網(wǎng)絡(luò)數(shù)據(jù)懇求效力原語在名為L的PCO匹配,并且B=1 L? N_DATArequest B=1 (X:=3)/一個網(wǎng)絡(luò)數(shù)據(jù)懇求效力原語在名為L的PCO匹配,并且B=1時,ASSIGNMENT_LIST被執(zhí)行。3.6.3 接納PDU 一個接納PDU的語句如下: PCO_Identifier ? PDU_Identifier 3.6.4 接納協(xié)同信息 接納語句也可以在CP上發(fā)送一條協(xié)同信
23、息(Coordination Message簡稱CM)。與句格式如下: CP_Identifier ?CM_Identifier 該語句中還可以包含其它輔助信息,這些信息與CM數(shù)據(jù)一同被處置,他們的闡明格式與規(guī)范RECEIVE語句一樣。3.6.5 OTHERWISE語句 OTHERWISE語句是描畫一個測試組件在PCO接納任何類型ASP或PDU的接納語句。該語句強(qiáng)調(diào)恣意ASP或PDU的類型,而并不是規(guī)范的類型。這是由于有時IUT并不是正常任務(wù),所以對這種情況的處置都?xì)w結(jié)為OTHERWISE語句處置。 下面引見OTHERWISE語句的語法 PCO_Identifier ? OTHERWISE 需
24、求留意的是OTHERWISE語句不能在CP上運(yùn)用。 在實(shí)踐運(yùn)用過程中,OTHERWISE常作為一個可交換的接納事件。 3.7 定義ASP、PDU和CM類型 前言: ASPs是分布式系統(tǒng)中的第N層與第N-1層效力的規(guī)范化定義,所以要測試這種效力的一致性,首先要在測試套中定義相應(yīng)的ASPs。 PDUs是網(wǎng)絡(luò)層次構(gòu)造中,層與層之間交互的格式闡明,它與相關(guān)的協(xié)議闡明有關(guān)。所以在測試套中也應(yīng)該定義相應(yīng)的PDUs。從一致性測試的角度,PDUs的定義應(yīng)思索非常規(guī)的PDUs數(shù)據(jù)格式,而不是規(guī)范的交互格式。 另一個需求定義的是協(xié)同音訊。 TTCN中提供了上述三種數(shù)據(jù)的定義表格,也可以運(yùn)用ASN.1方式定義。3.
25、7.1 TTCN復(fù)合類型 TTCN提供了聲明以下復(fù)合類型的表格: ASP 類型定義 PDU 類型定義 Structured 類型定義 CM 類型定義 ASP、PDU或structured類型關(guān)系: 一個ASP可以有參數(shù),而參數(shù)可以是任何非ASP類型。 一個PDU可以有不同的域,而域的類型可以是任何非ASP類型。 一個structured類型有構(gòu)成元素,而構(gòu)成元素的類型可以是任何非ASP類型。 3.7.2 類型鏈Chaining 3.7.3 ASN.1復(fù)合類型 在ASN.1中構(gòu)造器SEQUENCE和SET可以被用來構(gòu)造恣意的復(fù)合類型。ASN.1復(fù)合類型定義可以運(yùn)用下面的表格來定義: ASN.1類
26、型定義 ASN.1 ASP類型定義 ASN.1 PDU類型定義 ASN.1 CM類型定義 3.7.6 定義 ASPs 3.3.7 定義PDUs 3.3.8 構(gòu)造ASPs和PDUs的子集 3.3.9 定義CM類型 3.3.10在行為樹中運(yùn)用ASPs和PDUs IUTUTUnderLying ServiceLT1.N-DATARequest圖 3.5 ASP和PDU運(yùn)用實(shí)例4.N-DATAindication2.X-ConnectIndication3.X-ConnectresponseL 例1.1測試步驟為: 測試組件在低端經(jīng)過控制察看點(diǎn)L向IUT發(fā)出一個數(shù)據(jù)懇求N-DATA request;
27、在高端測試組件UT經(jīng)過控制察看點(diǎn),接納到一個銜接指示X-Connect indication或其它信息; UT發(fā)出建立銜接的應(yīng)對X-Connect response; LT接納一個銜接指示N-DATA indication或其它信息。 3.8 TTCN表達(dá)式 TTCN的表達(dá)式有: 文本 變量和常量標(biāo)識符 方式化參數(shù)標(biāo)識符 ASP參數(shù) PDU或CM域 構(gòu)造元素 預(yù)定義的和用戶定義的操作符 由上述表達(dá)式經(jīng)過組合而成是TTCN表達(dá)式3.8.1 TTCN運(yùn)算符 TTCN表達(dá)式中支持以下運(yùn)算符: 算術(shù)運(yùn)算符 關(guān)系運(yùn)算符 邏輯運(yùn)算符算術(shù)運(yùn)算 TTCN僅支持可以對整數(shù)或整數(shù)的導(dǎo)出類型運(yùn)算的運(yùn)算符。這些運(yùn)算符
28、有:+、-、*、 /和MOD關(guān)系運(yùn)算 相等“=和不等“運(yùn)算符可以用于任何一種數(shù)據(jù)類型。由等號和不等號構(gòu)成的表達(dá)式的值為BOOLEAN類型。 其它關(guān)系運(yùn)算TTCN支持可以對整數(shù)或整數(shù)的導(dǎo)出類型運(yùn)算的關(guān)系運(yùn)算符,它們是、=和=,例如X = 3*Y。 與等號運(yùn)算符的運(yùn)算構(gòu)造類型一樣,上述關(guān)系表達(dá)式的結(jié)果也為BOOLEAN類型。邏輯運(yùn)算TTCN 支持對布爾類型或布爾的導(dǎo)出類型運(yùn)算的邏輯運(yùn)算符,它們是AND、OR和NOT。例如,邏輯運(yùn)算表達(dá)式A AND NOT (B OR C),其中A、B和C均為布爾變量。 條件 一個條件是包含在括號內(nèi)的表達(dá)式, expression 這個表達(dá)式的值為布爾值。如一個包含
29、條件的表達(dá)式如下: X 6 AND H_string FFH 賦值運(yùn)算一 個 T T C N 語 句 可 以 是 一 個ASSIGNMENT_LIST,即一個賦值運(yùn)算列表,表中的賦值運(yùn)算用省略號分開,賦值運(yùn)算被放到一個小括弧內(nèi)。(assignment1, . . . ., assignmentn ) 例如:(X := 3, A := “a string, Y := 3*(Z+9), H := FFH) 3.8.2 TTCN函數(shù) 預(yù)定義函數(shù): HEX_TO_INT (data_object_reference) 實(shí)現(xiàn)HEXSTRING到INTEGER轉(zhuǎn)換的函數(shù)。 BIT_TO_INT (data
30、_object_reference) 位串到整數(shù)轉(zhuǎn)換的函數(shù)。 INT_TO_HEX (data_object_reference) INTEGER到HEXSTRING的轉(zhuǎn)換函數(shù)。 INT_TO_BIT (data_object_reference) INTEGER到BITSTRING的轉(zhuǎn)換函數(shù)。 LENGTH_OF (data_object_reference) 前往串類型數(shù)據(jù)對象的長度。 NUMBER_OF_ELEMENTS (data_object_reference) 前往SEQUENCE或SET類型的元素?cái)?shù)量。 IF_PRESENT (data_object_reference) 假設(shè)
31、OPTIONAL或DEFAULT數(shù)據(jù)對象在接納端的PDU出現(xiàn),那么為真;否那么為假。 IS_CHOSEN (data_object_reference) 該函數(shù)被用于從CHOICE中接納一個指定元素。假設(shè)一個數(shù)據(jù)對象(如PDU域)與接納值匹配,那么前往真。 用戶定義函數(shù) 3.9 闡明ASP、PDU和CM值 在前面的章節(jié)中我們曾經(jīng)引見了ASP、PDU和CM類型的定義。在實(shí)踐測試過程中,當(dāng)發(fā)送或接納一個數(shù)據(jù)時,這些數(shù)據(jù)類型定義還應(yīng)指定一個詳細(xì)的值,我們把這些值稱為變量的約束。 TTCN的約束定義表有: ASP約束定義 PDU約束定義 Structured類型約束聲明 CM約束聲明3.9.1 Sta
32、tic和Dynamic鏈 靜態(tài)銜接Static chaining: 這種銜接是把PDU約束或structure 約束作為ASP的參數(shù)、PDU域或structure的元素。 動態(tài)銜接Dynamic chaining: 與靜態(tài)銜接不同,它只發(fā)生在實(shí)踐約束作為參數(shù)傳送給約束援用的時候。3.9.2 復(fù)合ASN.1 值 無論是靜態(tài)鏈,還是動態(tài)鏈它們都是由ASN.1數(shù)據(jù)類型構(gòu)成,雖然在鏈表中沒有運(yùn)用相關(guān)的術(shù)語,但其本質(zhì)依然是運(yùn)用類型的援用構(gòu)造鏈表所定義的數(shù)據(jù)。假設(shè)一個援用采用鏈的方式,那么就有相應(yīng)的約束。3.9.3 ASP約束 通常,每一個ASP類型定義至少有一個ASP約束的定義。然而,在一些效力元語中定
33、義的效力沒有參數(shù),在這種情況下,約束是沒有必要的,對CM也是如此。然而,對于PDUs就不是這樣的情況,一個沒有域的PDU是沒有意義的。 ASP約束與PDU約束非常類似,有關(guān)內(nèi)容將在下面的章節(jié)中引見。運(yùn)用于PDU約束的規(guī)那么同樣可以運(yùn)用于ASP約束。 3.9.4 PDU的約束 3.9.5 構(gòu)造類型的約束3.9.6 CM約束 3.10 約束援用 TTCN的SEND和RECEIVE語句明確規(guī)定,只需ASP或PDU類型被發(fā)送和接納。在動態(tài)的行為表中,約束被用來明確定義什么樣的ASP或PDU值被發(fā)送或被接納。也就是說,SEND或RECEIVE語句必需有一個約束援用。3.10.1 參數(shù)化的約束 動態(tài)鏈 通
34、常,ASPs、PDUs 和structures類型的參數(shù)化約束是動態(tài)的,而不是靜態(tài)的。當(dāng)一個約束援用的參數(shù)用實(shí)踐約束交換時,它們之間就構(gòu)成一個動態(tài)的鏈。3.10.2 發(fā)送和接納約束 約束和發(fā)送語句 一個發(fā)送語句中指明的約束是將要經(jīng)過網(wǎng)絡(luò)發(fā)送的數(shù)據(jù)。在TTCN中,被發(fā)送的對象被稱為送對象Send Object,它由相關(guān)的約束信息來構(gòu)成。留意,賦值語句可以使變量給發(fā)送對象賦予新值,這就是為什么在ASSIGNMENT_LIST之前是BUILD短語。 SEND4BUILD2QUALIFIER1 ASSIGNMENT_LIST3 TIMER_OPERATION5 約束值和發(fā)送 在SEND語句中,我們將運(yùn)
35、用被接納的約束值received constraint value表示測試組件希望發(fā)送的值,該值是一個ASP參數(shù)值、PDU或CM約束中PDU或CM域。它們都曾經(jīng)在相關(guān)的ASP、PDU或CM定義中聲明過。 約束和RECEIVE語句 接受一個ASP、PDU或CM比接納一個ASP、PDU或CM值更復(fù)雜。這是由于要接受一個ASP、PDU或CM要進(jìn)展正確性檢驗(yàn)。這項(xiàng)任務(wù)應(yīng)該經(jīng)過在TTCN中闡明必需匹配的約束值來加以確認(rèn)。一個RECEIVE事件僅當(dāng)一切的條件被滿足時,才以為勝利。為此一個擴(kuò)展的RECEIVE語句為: RECEIVE1 MATCH2 QUALIFIER3 ASSIGNMENT_LIST4 T
36、IMER_OPERATION5Execute SENDAlternativeiQUALIFIERis true?Actions1.Build Send Object2.Execute ASSIGMMENTS(if any)3.Execute Timer OPS(if any)4.CONFORMANCE LOGreturnYes no QualifierReturn value=FALSEReturn value=TURE圖3.6 執(zhí)行一個對SEND約束的交換Execute RECEIVEAlternativeQUALIFIERis true ?Actions1.Execute ASSIGNME
37、NT 2.Execute Timer OPS(if any)3.POP receive object 4.CONFORMANCE LOGreturnYes or no QualifiernoReturn value=TURE3.7 執(zhí)行一個有約束RECEIVE的交換Constraint matches?Received ObjectOf correct type?yesyesReturn value= FALSE 接納對象 在TTCN中運(yùn)用接納對象Received Object一詞表示PCO或CP隊(duì)列頂端的ASP、PDU 或CM接納值,并且在RECEIVE語句執(zhí)行時被檢驗(yàn)。 約束值和接納 在R
38、ECEIVE語句中,我們將運(yùn)用被接納的約束值received constraint value表示測試組件希望接納的值,該值是一個ASP參數(shù)值、ASP、PDU或CM約束中PDU或CM域。它們都曾經(jīng)在相關(guān)的ASP、PDU或CM定義中聲明過。 接受值 我們將運(yùn)用接受值received value表示一個接納對象元素的值。一個接受值是一個與相關(guān)類型定義相一致的值。如ASP、PDU或CM定義等。 3.10.3 約束與OTHERWISE語句 在OTHERWISE 語句中不能運(yùn)用約束。切記OTHERWISE語句總是匹配非空的PCO輸入隊(duì)列,并不進(jìn)展任何正確性檢測。Execute RECEIVEAltern
39、ativeActions1.Execute ASSIGNMENT2.Execute Timer OPS(if any)3.POP receive object4.CONFORMANCE LOGreturnnoReturn value=TURE3.8 執(zhí)行一個約束的OTHERWISE的交換QUALIFIER=trueReceived ObjectOf any type?yesYes or no QualifierReturn value= FALSE3.11 接受約束值匹配 在這一個節(jié)中我們將仔細(xì)分析RECEIVE語句的執(zhí)行過程,并分析如何檢測一個接納值與指定的約束值匹配等問題。 3.11.1
40、指定值specific value 在大多數(shù)情況下,一個約束值就是一個指定值,該值并不一定是一個文字literal值。在TTCN中,一個指定值是一個與ASP、PDU或CM定義中的類型兼容的表達(dá)式的值。 TTCN允許在指定值中運(yùn)用的運(yùn)算符: 文字 變量和常量標(biāo)識符 方式化參數(shù)標(biāo)識符 預(yù)定義的和用戶定義的操作符 由上述表達(dá)式經(jīng)過組合而成是TTCN表達(dá)式 當(dāng)一個指定值用作約束值時,一個勝利的匹配意味著所接納的值與約束表達(dá)式的值完全相等。 省略值(Omitting Values) 在許多情況下,需求對ASP參數(shù)或PDU域省略。在TTCN表中,一切的參數(shù)或域都是可選擇的,或者是可省略的。省略的方法是運(yùn)用
41、一個“-符號來替代實(shí)踐值。 3.11.2 匹配機(jī)制 在大多數(shù)情況下,對一個接納到的PDU值與一個指定值完全一樣是不能夠的。而一個接納到的PDU值落入一個值區(qū)間或滿足一定條件是普遍的景象。TTCN支持多種值匹配機(jī)制,這些機(jī)制有: 符號匹配(matching symbols), 操作匹配(matching operations) 屬性匹配(matching attributes)。 詳細(xì)的匹配機(jī)制有: 值列表lists of values 補(bǔ)值列表complemented lists of values 整數(shù)范圍ranges of INTEGER values 恣意值any value 恣意值或省
42、略值any value or omit value 統(tǒng)配符wildcards 條件屬性if_present attribute 長度屬性length attributes 匹配一個值列表: 一個約束值可以是一個或多個指定值的列表指定值可以是一個表達(dá)式,所以列表中的元素能夠非常復(fù)雜。列表匹配是一個這樣的匹配,假設(shè)一個接納到的值與列表中的恣意一個元素匹配,那么匹配成立;否那么匹配失敗。例如,接納到的值00B 或11B,這與列表(00B, 11B)匹配。 補(bǔ)值列表匹配: 補(bǔ)值列表匹配是這樣的一種匹配,假設(shè)接納到的值與列表中的恣意一個值都不相等,那么匹配勝利;否那么匹配失敗。補(bǔ)值列表是在一個列表前加上
43、一個關(guān)鍵字COMPLEMENT。與列表一樣,列表中可以運(yùn)用任何數(shù)據(jù)類型的值。 例如,接納到的值01B或10B,與 COMPLEMENT (00B,11B)匹配。這里的COMPLEMENT (00B, 11B)列表(NOT 00B, NOT 11B)等價。 范圍匹配Matching Ranges 范圍匹配僅在與INTEGER兼容類型的數(shù)據(jù)匹配。運(yùn)用關(guān)鍵字INFINITY和-INFINITY表示正數(shù)和負(fù)數(shù)方向的范圍。假設(shè)接納到的值落入一個指定的范圍之內(nèi),那么匹配勝利,否那么失敗。 例如: 一個范圍(8 . INFINITY)與恣意大于7的整數(shù)值匹配。 匹配恣意值Matching Any Value
44、 在許多情況下,測試套只接納一個域的恣意一個單值,并且該值與定義的相對應(yīng)的值兼容。恣意值匹配是基于這種情況下的匹配,當(dāng)所接納到的值與所希望的值兼容,那么匹配勝利;否那么失敗。恣意值運(yùn)用?表示。 例如,00B、01B、10B 和11B與定義的2位長的BITSTRING串匹配。 匹配恣意值或完全省略 匹配恣意值或完全省略AnyOrOmit用“*表示。它與匹配恣意值非常類似,只是所要匹配的值可以省略。假設(shè)一個值出現(xiàn),并且所接納的值與指定的類型兼容,那么匹配勝利;否那么值被省略。匹配恣意值和完全省略僅用于可選域的匹配。 例如,假設(shè)曾經(jīng)聲明了一個長度為2的BITSTRING類型的域,那么接納到的00B、
45、01B、10B 和11B和空與該域匹配。再如,我們曾經(jīng)聲明了一個SEQUENCE OF INTEGER類型的域,那么SEQUENCE OF INTEGER和空序列與其匹配。 值內(nèi)統(tǒng)配符 值內(nèi)統(tǒng)配符有兩種: 恣意一個AnyOne匹配 :恣意一個匹配用符號“?表示,它表示數(shù)據(jù)中的?可以用恣意同類型的單一元素交換。 恣意一個或無AnyOrNone匹配:數(shù)據(jù)類型可以是String、SEQUENCE、SEQUENCE OF、SET和SET OF類型。然而,要匹配的元素不能被省略。 例如: ?0B與00B或10B匹配。 ab?z將與任何長度為4的,并且以ab開頭,以z結(jié)尾的字符串匹配。 一個SEQUENC
46、E OF INTEGER類型,如1, 2, ?, 3與任何第3個元素為任何整數(shù)的4元素元組匹配。 恣意一個或無匹配用符號“*表示,它用于實(shí)現(xiàn)單一元素和一個延續(xù)元素交換的匹配,匹配元素還可以省略??梢赃M(jìn)展該匹配的數(shù)據(jù) 類 型 有 : S t r i n g 、 S E Q U E N C E 、SEQUENCE OF、SET和SET OF類型。 例如: *0B將與任何以0結(jié)尾的BITSTRING類型值匹配。 ab*z將與任何以ab 開頭,以z結(jié)尾的恣意字符串,也包括abz。 一個SEQUENCE OF INTEGER類型的值,如1, 2, *, 3與任何SEQUENCE OF INTEGER類型
47、的以1, 2為第一、二元素,3為第四個元素的與元組匹配,也與1,2,3匹配。If_Present屬性匹配If_Present屬性匹配是專門為可選擇域匹配所設(shè)計(jì)的一種類型的匹配。這是一種常見的情況,一個測試套事先不知道一個IUT能否包含一個可選擇值,或者協(xié)議能否包含一個特殊的PDU,所以測試套必需闡明一個可選擇的值,并檢測該值。例如,3 IF_PRESENT表示假設(shè)整數(shù)值3出現(xiàn)那么被接納。留意:在TTCN表中,一切的域都被以為是可選擇的,這意味著所接納的恣意一個指定的類型值都將進(jìn)展匹配。在ASN.1中就不是這樣,它必需嚴(yán)厲的加以闡明。 長度限制Length Restrictions 長度限制可以
48、運(yùn)用在以下類型: BITSTRING HEXSTRING OCTETSTRING /ASN.1 16進(jìn)制串 CharacterString SEQUENCE OF SET OF 例如: HEXSTRING 8 3.12 編碼 原TTCN規(guī)范中不涉及網(wǎng)絡(luò)傳送信息的編碼。改版的TTCN添加了編碼功能。它允許TTCN用戶在下面的運(yùn)用中闡明編碼。 編碼類型: 一切的ASP和/或PDU; 單獨(dú)的ASP類型和/或PDU類型; 單獨(dú)的ASP參數(shù)和/或PDU域; 單獨(dú)的ASP約束和/或PDU約束; 單獨(dú)的ASP約束參數(shù)和/或PDU約束域; ASPs編碼 : 作為一個規(guī)范并不關(guān)懷如何闡明ASP參數(shù)的構(gòu)成,對AS
49、P參數(shù)的描畫是實(shí)現(xiàn)范疇的內(nèi)容,不在規(guī)范討論的范圍之內(nèi)。TTCN作為一個規(guī)范并不思索ASP類型的綁定,即在測試套中給出一致的表示。也就是說,檢查ASP參數(shù)與ASP實(shí)現(xiàn)的一致性目的,而不是TTCN的闡明。 PDUs編碼 : 與ASP不同,PDU域在相關(guān)的協(xié)議規(guī)范中有類型定義。這些類型是ETS中正確實(shí)現(xiàn)的根底。就編碼而言,TTCN服從與PDU有關(guān)的規(guī)范。例如,是運(yùn)用ASN.1,那么ASN.1的編碼規(guī)那么BER就可以運(yùn)用。當(dāng)然,也可以不采用。假設(shè)采用該規(guī)那么,那么其它任務(wù)就應(yīng)該服從該編碼規(guī)那么中的條款。3.13 援用復(fù)合類型元素 TTCN允許在表達(dá)式中把單個復(fù)合類型元素作為操作數(shù)運(yùn)用,或者作為賦值語句
50、的值。這些元素有: 一個ASP參數(shù) 一個PDU域 一個structure的元素 一個CM域 在ASN.1中,援用可以訪問以下元素: 在一個BITSTRING中的單個BIT; 在一個SEQUENCE或SEQUENCE OF的元素; 在一個SET或SET OF的元素; 在一個CHOICE中的選擇。 這些援用可以產(chǎn)生在: SEND或RECEIVE語句;或 撲獲一個接納到的為后來運(yùn)用的ASP或PDU3.13.1 在SEND和RECEIVE語句的上下文中援用 SEND和RECEIVE語句中存在對ASP參數(shù)、PDU域或構(gòu)造類型的元素的援用,不僅如此,這些援用與約束相關(guān)。這些援用可以用以下簡單的符號表示:
51、ASP_Identifier . ParameterIdentifier PDU_Identifer . FieldIdentifier CM_Identifer . FieldIdentifier StructuredTypeIdentifier . ElementIdentifier 例如:假設(shè)一個子構(gòu)造PDU被銜接到一個ASP,要在一個語句行中援用構(gòu)造中第k個元素,我們可以寫成:A S P _ I d e n t i f i e r . P a r a m e t e r i . PDU_Identifier . fieldj . StructureIdentifier . elemen
52、tk 然而,由于ASP、PDU和structure的標(biāo)示符在測試套中是單一的,所以它可以化簡成:StructureIdentifier . elementk 例如: A := N_DATAindication . user_data . DT_PDU . user_data A := DT_PDU . user_data 表3-35意味著約束的第三個域被重載,并且發(fā)送對象a_pdu以第三個域?yàn)镕ALSE值被發(fā)送。 假設(shè)我們想重載field2的值為22,那么我們可以簡單的表示為: BIT STRING可以按位訪問,假設(shè)我們想把field1中的第3位改成1 。3.13.3 撲獲接納到的ASPs 和
53、PDUs 一個接納到的ASP或PDU僅在RECEIVE語句期間被保管,即被接納的對象不能被后來的接納事件所訪問。在實(shí)踐中把ASP、PDU或structure type變量作為接納對象可以處理問題。3.14 判決Verdicts TTCN提供了兩種判決機(jī)制: 初步結(jié)果 最終結(jié)果 一個初步結(jié)果或最終結(jié)果都經(jīng)過TTCN語句給出,但以下語句除外: IMPLICIT SEND; ATTACH; GOTO; REPEAT。3.14.1 結(jié)果變量 結(jié)果變量,簡稱R。該變量即可以在表達(dá)式中運(yùn)用,又可以在行為樹的判決列中運(yùn)用。結(jié)果變量用來存放初步的結(jié)果,特性如下: 一個初步判決不能終止測試?yán)膱?zhí)行; 它可以作為
54、一個只讀變量在表達(dá)式中出現(xiàn)。 它僅能取pass、fail、inconc 或類型定義中的一個值。這些值都是預(yù)定義的標(biāo)識符,并且嚴(yán)厲區(qū)分大小寫。 它的值可以在判決列中被改動 在測試?yán)_頭,R與一個類型定義綁定。 3.14.2 初步結(jié)果 判決列中R的值由記錄更新為一個初步結(jié)果,一個初步結(jié)果能夠是以下之一: (P)或(PASS),闡明測試目的在一些方面曾經(jīng)到達(dá)。 (I)或(INCONC),闡明一些測試目的之外的景象在測試?yán)谐霈F(xiàn)。/在謀時辰發(fā)出一個N_DISCONNECTindication是絕對合法的ASP. (F)或(FAIL),闡明協(xié)議有錯誤或測試目的沒有到達(dá)。 例如: 假設(shè)R的值為FAIL并且
55、初步結(jié)果PASS在判決列中,那么R不能改動成PASS,它還是FAIL。反之,假設(shè)R的值是PASS并且一個初步結(jié)果FAIL在判決列中出現(xiàn),那么R的值是FAIL。下表是R按優(yōu)先級改動的情況。3.14.3 最終結(jié)果 一個測試?yán)谝韵聨追N情況下被終止: 一個測試?yán)男袨闃涞竭_(dá)葉節(jié)點(diǎn); 在一個行為行判決列中有一個明確的最終判決(fail or inconc )。 一個最終的判決能夠是下面幾種情況: P或PASS,闡明一個pass結(jié)果被記錄; I或INCONC,闡明一個例外結(jié)果被記錄; F或FAIL,闡明一個fail結(jié)果被記錄; 預(yù)定義變量R表示最終結(jié)果,除非一個測試?yán)诲e誤的記錄,這時R的值是none,
56、而不是最終結(jié)果。 例如: 假設(shè)R的值是fail并且最終結(jié)果pass在判決列中出現(xiàn),那么最終結(jié)果fail將被記錄。反之,假設(shè)R有值pass并且一個最終判決fail在判決列中出現(xiàn),那么一個最終結(jié)果fail將被記錄。3.15 GOTO語句 為了用簡單的方式表達(dá)循環(huán)過程,TTCN允許在語句前加標(biāo)號,并運(yùn)用GOTO語句實(shí)現(xiàn)過程轉(zhuǎn)移。GOTO語句格式如下: - LabelIdentifier 或 GOTO LabelIdentifier 運(yùn)用GOTO時應(yīng)遵守以下規(guī)那么: 一個GOTO只允許在行為描畫中的一棵子樹中出現(xiàn), 在一個行為描畫中一個標(biāo)號必需是獨(dú)一的; 一個標(biāo)號必需是一個交換集的第一個語句,也就是說
57、,GOTO語句實(shí)現(xiàn)的轉(zhuǎn)移不應(yīng)該是交換集的中間語句; 一個GOTO語句不能轉(zhuǎn)移到最上一層的交換測試步的根節(jié)點(diǎn)語句; 在行為樹中,一個GOTO語句只可以轉(zhuǎn)移到它的祖先節(jié)點(diǎn),即僅能轉(zhuǎn)移到曾經(jīng)執(zhí)行過的節(jié)點(diǎn); 在GOTO語句中不能運(yùn)用其它語句。 3.16 定時器語句 TTCN定時器被用來測試IUT中的定時器事件。一個定時器語句通常用于對IUT應(yīng)對的時間設(shè)置,并發(fā)出START命令和TIMEOUT事件。另一個與定時器相關(guān)的命令是CANCEL,它用來終止一個定時器。一切的定時器必需在定時器描畫表中定義。Duration是從定時器啟動時辰到定時器停頓的時間間隔,該間隔可以用以下單位計(jì)量。 該間隔可以用以下單位計(jì)
58、量: ps皮(可)秒,悄然秒,百億分之一秒 ns十億分之一秒 us (一百萬分之一秒,微秒) ms (毫秒) s (秒) min (分)。 超時列表 TTCN維持一個超時列表。假設(shè)一個定時器期滿,那么該定時器被參與到列表中,有三種方法可以把定時器從表移出: 一個勝利的TIMEOUT語句 運(yùn)用定時器啟動命令START 運(yùn)用定時器終止命令CANCEL TIMEOUT語句 在TTCN測試套中可以定義一個定時器,用于檢查一個應(yīng)對能否超時。語句格式如下: ?TIMEOUT TimerIdentifier 當(dāng)執(zhí)行到該語句時,測試套將檢查該定時器能否在超時列表中,假設(shè)與超時列表中的一個定時器匹配,那么TIM
59、EOUT發(fā)生,否那么TIMEOUT不發(fā)生。 該語句的另一中格式是: ?TIMEOUT 即沒有指定timerIdentifier。在這種情況下 只 需 超 時 列 表 不 空 , 就 以 為TIMEOUT匹配勝利。 TIMEOUT可以與條件組成帶條件的TIMEOUT語句,該語句可以后接A S S I G N M E N T _ L I S T 、TIMER_OPERATION等命令,格式如下: T I M E O U T 2 Q U A L I F I E R 1 A S S I G N M E N T _ L I S T 3 TIMER_OPERATION4 其中:方括號內(nèi)為可選擇項(xiàng)。該語句中
60、的各分量的執(zhí)行順序是一定的。 注:TIMEOUT不能被用于阻止一個IUT部件發(fā)送應(yīng)對。定時器快照 定時器快照指的是定時器的當(dāng)前值。每一次開場執(zhí)行交換集循環(huán)時,當(dāng)執(zhí)行到一個TIMEOUT事件,那么該超時快照時辰被檢查,假設(shè)匹配,那么TIMEOUT發(fā)生。定時器啟動命令START 一個定時器經(jīng)過START激發(fā)。格式如下: START TimerIdentifier 在定時器被啟動后,可以顯示地指明定時器的區(qū)間。假設(shè)指定,那么該區(qū)間將覆蓋原有的定時器時間區(qū)間。顯示聲明時間區(qū)間的語句格式如下: START TimerIdentifier ( Duration ) START_TIMER語句也可以是有條件
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 勞務(wù)合同范本林業(yè)
- 傳單派發(fā)合同范本
- 鄉(xiāng)鎮(zhèn)物業(yè)收費(fèi)合同范本
- 勞務(wù)公司租車合同范本
- 公會主播合同范本
- 勞務(wù)購買合同范例
- 公司經(jīng)營模式合同范本
- 出售買賣合同范本
- 勞動合同轉(zhuǎn)簽合同范本
- 2025國合通測校園招聘筆試參考題庫附帶答案詳解
- JJG 144-2007標(biāo)準(zhǔn)測力儀
- GB/T 8417-2003燈光信號顏色
- GB/T 7984-2001輸送帶具有橡膠或塑料覆蓋層的普通用途織物芯輸送帶
- GB/T 7324-2010通用鋰基潤滑脂
- GB/T 5916-2020產(chǎn)蛋雞和肉雞配合飼料
- GB/T 28114-2011鎂質(zhì)強(qiáng)化瓷器
- GB/T 15566.1-2020公共信息導(dǎo)向系統(tǒng)設(shè)置原則與要求第1部分:總則
- 現(xiàn)代漢語常用詞匯表(兩字)
- 食品添加劑培訓(xùn)講義
- 醫(yī)院內(nèi)靜脈血栓栓塞癥防治質(zhì)量評價與管理指南(2022版)
- 冷藏車的制冷原理、發(fā)展進(jìn)程及前景課件
評論
0/150
提交評論