• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看

      ?

      導航地球站軟件接口測試用例設計

      2015-09-07 08:29:13杜江劉楓
      時間頻率學報 2015年4期
      關鍵詞:邊界值測試用例等價

      杜江,劉楓

      導航地球站軟件接口測試用例設計

      杜江1,2,3,劉楓1,2

      (1.中國科學院 國家授時中心,西安 710600;2.中國科學院 精密導航定位與定時重點實驗室,西安 710600;3.中國科學院大學,北京 100049)

      以導航地球站軟件測試為背景,介紹了導航地球站工作單元結構及軟件接口情況,概括了因果分析、等價類劃分和邊界值分析等3種測試用例設計方法。分析了接口報文包頭信息和數(shù)據(jù)體中控制類信息、狀態(tài)上報類信息的特點,闡述了各傳輸模式下測試用例設計方式。最后以某衛(wèi)星導航地球站的部分接口測試為實例對測試用例設計方法進行了驗證。

      軟件測試;接口測試;測試用例

      0 引言

      軟件測試是軟件工程中的重要組成部分,不同工程環(huán)境涉及的測試方法和測試理論不同,目前國內(nèi)外關于軟件測試在各行業(yè)的應用也作了大量研究和實踐。我國神舟十號飛船、嫦娥月球探測、北斗系統(tǒng)[1]等重大航空航天工程中,軟件是重要的組成部分。為了保證軟件項目在最終系統(tǒng)中正確可靠地運行,軟件開發(fā)過程中必須充分重視軟件的測試,而針對這些測試項目作理論和應用情況總結對以后相關領域研究與實踐有較好的指導作用。

      在導航地球站中,包含多個組成部分,比如時頻工作單元、天線單元、信號處理軟件單元等,各個部分又包含復雜的軟、硬件,比如監(jiān)視控制軟件、地面發(fā)射與接收設備等。導航地球站在運行過程中的數(shù)據(jù)傳輸具有時延小、容錯率低和穩(wěn)定性強等特點[1],各工作單元內(nèi)部或外部之間的大量通信都是通過軟件以接口協(xié)議實現(xiàn)的,如圖1為某衛(wèi)星導航地球站監(jiān)視控制軟件所在控制管理單元與其他工作單元接口示意圖。在該示意圖體現(xiàn)的該地球站接口傳輸過程中,一個普通接口數(shù)據(jù)包一般包含上百個字節(jié)的信息量,而實現(xiàn)該數(shù)據(jù)包信息傳輸?shù)能浖a在編碼完成后需要經(jīng)過有效且全面的測試才能保證軟件接口如預期那樣實現(xiàn)數(shù)據(jù)的正確和可靠的傳輸。接口測試主要用于檢測外部系統(tǒng)與系統(tǒng)之間以及內(nèi)部各個子系統(tǒng)之間的交互點。測試的重點是檢查數(shù)據(jù)的交換,傳遞和控制管理過程,以及系統(tǒng)間的相互邏輯依賴關系等,而代表不同輸入情況的測試用例設計則是接口測試的重要環(huán)節(jié)。

      圖1 某導航地球站軟件接口示意圖

      文中首先介紹有關軟件接口的協(xié)議和數(shù)據(jù)傳輸?shù)目刂品绞剑攀鲆蚬治?、等價類劃分和邊界值分析等軟件測試方法,總結和闡述導航地球站軟件接口在各傳輸方式下的測試用例設計特點和方法,最后以某衛(wèi)星導航地球站的部分接口測試為實例驗證測試用例設計方法。

      1 軟件接口

      被測系統(tǒng)之間的網(wǎng)絡通信基于TCP/IP的TCP協(xié)議、UDP協(xié)議。其中,TCP協(xié)議面向連接、可靠但速度和所需開銷(時間、資源)受到約束的傳輸;UDP協(xié)議面向非連接、速度快、開銷少但可靠性受到限制的傳輸[2]。該導航地球站對傳輸速度和響應時間等有較高要求,比如控制管理單元的監(jiān)視控制軟件與外部15個設備或軟件存著接口關系,性能指標要求監(jiān)視控制軟件對150個資源工作狀態(tài)的判定時間小于3s(即輪詢一個設備的時間不得超過0.02s),報文處理時間在20ms內(nèi)完成,因而實際工作中在局域網(wǎng)內(nèi)采用UDP協(xié)議進行接口傳輸更加合適。

      在接口傳輸協(xié)議得以確立的基礎上,關于消息如何在接口中進行傳輸還需要約定一個統(tǒng)一標準,形成系統(tǒng)的接口控制文件。接口控制文件確定目標信息在傳輸過程中的控制流程和數(shù)據(jù)內(nèi)容等,形成如表1所示的接口報文格式。該接口報文格式即軟件接口傳輸時的統(tǒng)一信息形式,包含由協(xié)議版本、信源標志、信宿標志、數(shù)據(jù)類型、數(shù)據(jù)屬性等構成的數(shù)據(jù)包頭部分和由消息內(nèi)容構成的數(shù)據(jù)體部分。其中,數(shù)據(jù)包頭描述有關報文傳輸方式的內(nèi)容,比如解析過程、反饋機制、存儲條件、異常情況等;數(shù)據(jù)體描述消息的具體內(nèi)容,包含諸如bit(位,放在字節(jié)里)、整型、浮點型、布爾型等類型組成的數(shù)據(jù)參數(shù),該地球站的數(shù)據(jù)參數(shù)變化范圍從10-12~107,長度在1~8字節(jié)之間不等。

      表1 接口報文格式 byte

      該導航地球站的接口控制文件主要制定兩大類型的消息內(nèi)容,一類是接口報文正常傳輸時的消息內(nèi)容和針對該內(nèi)容的報文包頭傳輸控制方式,另一類是接口發(fā)生傳輸活動時所需的信息反饋、異常處理等消息內(nèi)容。

      2 測試用例設計方法

      “測試用例”是為某特殊目標而編制的一組測試輸入,并補充以執(zhí)行條件和預期結果。關于軟件接口的測試,常用的測試用例設計方法有因果分析法、等價類劃分和邊界值分析法等[3-4]。其中,因果分析法根據(jù)結果來設計原因,突出在結果已知的情況下窮舉出所有產(chǎn)生該結果的組合因素,并明確這些因素間的關系。使用因果分析法設計測試用例的好處是當測試輸入為多個參數(shù)時,一方面可以有效避免設計出一些產(chǎn)生相同結果的測試用例,另一方面該方法考慮因素間的關系,側重分析關系因素間所有的組合情況[5],相互間存在關系的多個因素共同形成的測試用例可能會產(chǎn)生單個因素得不到的新的運行結果,從而能提高軟件測試的充分性。而使用該方法的不足之處在于在設計測試用例前必須事先明確輸出結果,這將給一些關于未知結果的測試造成障礙,特別是當關系因素較多時,組合情況考慮的測試用例數(shù)量將大大提高[6]。比如對于n個關系參數(shù),即便每個參數(shù)只有2個取值,測試用例的數(shù)量理論上也將達到2n。

      等價類劃分和邊界值分析主要針對單因素情況,二者相輔相成。等價類劃分根據(jù)測試需求對測試因素按取值范圍進行等價類劃分,根據(jù)不同情況劃分成若干個有效等價類和無效等價類。對于所有的有效數(shù)據(jù)可以將其劃分為若干個有效等價類,無效等價類是指無意義的輸入數(shù)據(jù)構成的集合,測試用例則由有效等價類和無效等價類的代表組成。進行等價類劃分的好處是能使得單個參數(shù)測試用例取值的數(shù)量大大減少,同時還能有效發(fā)現(xiàn)某一類錯誤,而且提高測試的覆蓋率。邊界值分析建立在等價類劃分的基礎之上,針對等價類劃分法關于邊界情況的考慮不足,而系統(tǒng)容易產(chǎn)生異常或錯誤處往往又在邊界,選擇邊界值作為測試用例常常與等價類劃分得到的測試用例互為補充,使用邊界值分析必須對所有等價類的每個邊界進行測試。等價類劃分和邊界值分析對于一個參數(shù)或一個集合整體的測試用例設計行之有效,但對于參數(shù)間存在關系約束的情況,則需要對這些存在關系約束的參數(shù)進行范圍劃分,從而形成新的集合后才能進行用例設計。

      在進行導航地球站軟件接口測試時,將以上3種方法有效結合起來,充分利用各自的優(yōu)點進行測試用例設計。

      3 接口測試用例

      因果分析法中因素間的關系主要概括為互斥關系、獨立關系、包含關系、耦合關系和相交關系[7],這里的“因素”可以理解為由一個或多個參數(shù)組成的一個集合。正如前面提到的,等價類劃分注重因素中參數(shù)所在的范圍,比如對于連續(xù)范圍參數(shù)n,n1<n<n2,可劃分一個該范圍內(nèi)有效等價類和兩個范圍外無效等價類,對于離散范圍參數(shù)n∈{n1, n2,...,ni},劃定有效等價類{n1, n2,...,ni},無效等價類n?{n1, n2,...,ni},測試時從每個等價類中選擇一個值作為測試用例。邊界值分析則對應等價類劃分邊界的范圍,比如參數(shù)n的測試用例應該包括 n1, n2,略大于 n2和略小于 n1。由于因果分析法最終還是要轉換到單個測試因素上,故下面將以單個因素為中心,結合導航地球站軟件接口的特點,充分利用因果分析法中的因果特征和關系特征實現(xiàn)單個因素的等價類劃分和邊界值分析,進而討論測試用例取值情況。

      導航地球站軟件接口眾多,各個設備或系統(tǒng)之間的通信大多是雙向的,通信內(nèi)容根據(jù)各設備或系統(tǒng)的特點由軟件接口控制文件定義,內(nèi)容格式則由如表1所示的數(shù)據(jù)包頭和數(shù)據(jù)體兩部分組成。各接口的傳輸報文格式經(jīng)過統(tǒng)一制定,數(shù)據(jù)包頭部分中各個位置的參數(shù)形式和取值范圍是一致的,只是在不同傳輸情況下各個參數(shù)具體取值不同;數(shù)據(jù)體部分的參數(shù)是變化的,在不同接口的各種傳輸情況下各參數(shù)類型和取值范圍完全不同。在對該地球站軟件接口報文測試時,一方面從數(shù)據(jù)包頭和數(shù)據(jù)體兩個角度進行,另一方面在這兩個角度下,對軟件接口按各個傳輸類型劃分進行測試。結合這兩個方面,對各個接口傳輸情況選擇合適的上述測試方法進行測試用例設計。

      3.1報文包頭測試用例

      對表1描述的報文包頭測試是系統(tǒng)接口報文測試的首要任務,目的是檢驗數(shù)據(jù)報文是否符合傳送預期和測試包含數(shù)據(jù)體的操作方面的信息。報文包頭控制整個數(shù)據(jù)包在接口中的傳輸過程,比如數(shù)據(jù)包在傳輸時的應答、包丟失、包錯誤、包存儲等處理機制,這些處理機制由報文包頭的各個標識位的取值決定,一個標識位包含一個或多個參數(shù),對該部分的測試最終還是體現(xiàn)在各個參數(shù)的取值上。報文包頭的測試在充分考慮軟件接口約定的傳輸機制情況下進行用例設計,主要涉及等價類劃分和邊界值分析思想。

      1)報文包頭等價類

      報文包頭中各標識位所包含參數(shù)的用例取值依據(jù)其決定的接口傳送協(xié)議解析過程或反饋過程。目標軟件在接收到數(shù)據(jù)報文包后,首先針對報文包頭從前往后進行順序解析,根據(jù)解析情況采取對應的處理措施。而對數(shù)據(jù)包頭測試的方式就是模擬這個解析過程中涉及的所有傳輸情況,驗證數(shù)據(jù)報文包是否符合傳輸預期。這里,對表1所示的數(shù)據(jù)包頭形式下的各個標識位進行測試用例考慮時涉及的等價類劃分列舉如下:

      ①對于取離散值的標識位參數(shù),比如“版本標識”包含一個參數(shù),取值范圍{1 2 3},, ,測試時將該范圍內(nèi)的值劃分為有效等價類,范圍外的值劃為無效等價類,參數(shù)值2和4可作為分別從有效等價類和無效等價類中選取的測試用例;對于類似“信源標志”下的“設備編號”參數(shù)的連續(xù)取值范圍,比如(0 000,5 000),則劃分該范圍內(nèi)的取值屬于有效等價類,范圍外的取值屬于無效等價類,參數(shù)值1000 和6 000可分別作為從有效等價類和無效等價類中選取的測試用例。

      ②對于“數(shù)據(jù)長度”標識位,其參數(shù)取值代表數(shù)據(jù)體的長度,當參數(shù)的值與數(shù)據(jù)體實際長度相符時,該值屬于有效等價類,否則屬于無效等價類,此時的測試用例取值不僅僅以參數(shù)范圍來確定,還需要考慮客觀傳輸?shù)臈l件約束。比如某接口長度參數(shù)取值范圍(1,2000),數(shù)據(jù)體實際長度1600,則長度參數(shù)的測試在完成本身范圍驗證后,僅僅取1600時才屬于符合客觀需求的有效等價類,其他值均屬于無效等價類。“發(fā)生時間”等標識也有類似特性。

      ③該地球站中,接口控制文件約定的報文包頭各個標識位在程序中的執(zhí)行順序為從前往后依次進行,一旦執(zhí)行過程發(fā)現(xiàn)標識參數(shù)取值為無效等價類,程序就執(zhí)行中止,轉而執(zhí)行對應的異常處理程序。針對這一特性的測試用例,等價類的劃分可以通過結合因果分析的方式來實現(xiàn),比如“信宿標識”取有效等價類時,前面“版本標識”和“信源標識”也必然取有效等價類,否則“信宿標識”沒有意義;當“信宿標識”取無效等價類時,其后的其他標識位則變得沒有意義,需發(fā)送出的報文包中對應的測試用例只需用默認值填充即可,這就是指在劃分的同時需要考慮因果的條件約束。因此,數(shù)據(jù)報文包頭的測試執(zhí)行時,應該從前往后測試有效等價類的測試用例,從后往前測試無效等價類的測試用例。

      2)報文包頭邊界值

      報文包頭控制的接口數(shù)據(jù)在傳輸時一些邊界值情況是軟件測試的重點,這些邊界的測試能有效補充前述關于等價類劃分選取測試用例的不足。對前述關于報文包頭涉及的邊界情況特性描述如下:

      ①單個參數(shù)取離散值時,比如“工作單元標識”的參數(shù)取值范圍{1, 2, 3, 4, 5, 6, 7 },選取邊界值取1,7和8作為測試用例,連續(xù)范圍參數(shù)如上述“設備編號”的邊界值取0,5000和5001作為測試用例,即選取前述提到的略大、略小于邊界值和邊界值本身作為測試用例,從而檢驗軟件對這些參數(shù)的范圍定義是否正確。

      ②對于“數(shù)據(jù)長度”這類標識,建立在參數(shù)取值和數(shù)據(jù)體實際長度相等的基礎上,同時取參數(shù)值和調(diào)整數(shù)據(jù)體實際長度,并使二者同時取值在最小為0和最大為有限值時的有效等價類邊界,以及調(diào)整參數(shù)值和實際長度至略大于最大值時作為邊界測試用例,以此檢驗軟件能否處理數(shù)據(jù)體內(nèi)容為空和軟件接口數(shù)據(jù)負載時的情況。

      ③另外,對于“包序列”、“發(fā)生時間”等標識為代表的測試,除了考慮如“數(shù)據(jù)長度”標識其負載情況下的邊界測試用例,還要考慮在實際傳輸時,每次傳輸?shù)拈_始和結束情況作為邊界的測試用例,以便有效檢驗接口傳輸?shù)碾A段連貫性。

      3.2數(shù)據(jù)體測試用例

      導航地球站各工作單元間通過接口報文的數(shù)據(jù)體部分實現(xiàn)傳輸控制和狀態(tài)上報兩大類信息。其中,控制信息主要包括系統(tǒng)內(nèi)功能控制指令、非地面設備報文信息等;狀態(tài)上報信息包括系統(tǒng)狀態(tài)信息、系統(tǒng)異常(例如錯誤告警)信息、傳輸反饋信息等。

      3.2.1控制信息測試用例

      1)功能控制指令

      功能控制指令的特點主要體現(xiàn)在軟件接口所傳輸?shù)娜舾蓚€報文參數(shù)中,一次功能測試任務受限于設備、線路之間的相互約束關系,使得對應的報文中各個參數(shù)間也存在關系約束。在進行該類接口參數(shù)測試用例設計時,必須充分考慮參數(shù)涉及的關系情況,對各個參數(shù)所在字節(jié)段按關系進行模塊劃分,根據(jù)劃分好的模塊各自進行對應的參數(shù)測試用例取值。對于一次接口傳輸任務中因關系不能取值的參數(shù),則需要對該參數(shù)用默認值填位。下面以實例1舉例描述該類接口測試用例設計情況。

      實例1:在如表2所示的某監(jiān)視控制軟件向天線單元發(fā)送的數(shù)據(jù)體長度達72字節(jié)的控制指令中,包含著系統(tǒng)總控、變頻器1、變頻器2、變頻器3、模擬器1、模擬器2、模擬器3、功放1、功放2以及天線等設備和單元的控制信息。

      表2 控制指令報文組成

      在接口發(fā)出的包含上述信息的一次控制指令包中,天線伺服、變頻器、模擬器和功放之間相互獨立,變頻器1、變頻器2、變頻器3之間互斥,變頻器內(nèi)部的各個參數(shù)之間相互獨立,模擬器和功放情況與變頻器相同,總控參數(shù)制約著其他所有單元。此時,對于諸如單個參數(shù)a∈{0,1}取離散值和b2∈{1147.000,1652.000}取連續(xù)值的情況,參數(shù)a的有效等價類測試用例取0或1,無效等價類取其他值,參數(shù) b2的有效等價類為(1147.000,1652.000),無效等價類為(0,1147.000),(1652.000,+∞);a不用考慮邊界值, b2的邊界值為1146.999,1147.000,1652.000,1652.001這4個值。在總控參數(shù)a對其他模塊的約束關系中,當a取1時,天線伺服和變頻器、模擬器、功放中能工作的單元共同構成有效等價類,不能工作的單元構成無效等價類,此時報文內(nèi)各個參數(shù)的用例取值只從有效等價類中選取。當參數(shù)a取0時,其后所有工作單元均不工作,在發(fā)送的測試報文中,除了參數(shù)a之外的其他各個參數(shù)的取值從無效等價類中取提前約定的默認值即可。而在變頻器、模擬器和功放各個模塊內(nèi)部,比如變頻器1內(nèi)各參數(shù)有效時,變頻器2和變頻器3無效,這樣就構成3個集合{變頻器1有效,變頻器2無效,變頻器3無效}、{變頻器1無效,變頻器2有效,變頻器3無效}和{變頻器1無效,變頻器2無效,變頻器3有效}為有效等價類,而除此之外的其他組合如{變頻器1有效,變頻器2有效,變頻器3無效}則為無效等價類,此時模塊內(nèi)參數(shù)測試用例的取值建立在該關系基礎上。對模擬器和功放的分析類似于以上對變頻器的分析。

      由以上分析可見,以前面因果分析里的關系約束方式來討論從集合到個體參數(shù)的等價類劃分或邊界值,進而確定最終測試用例取值的過程是導航地球站軟件接口測試的一個特點。

      2)非設備報文信息

      不同于功能控制指令,非設備報文信息不對應具體的設備或?qū)ο?,它們僅作為純數(shù)據(jù)內(nèi)容提供給目標進行邏輯演算或其他用途,例如飛行器運行軌道信息、時頻參數(shù)信息等。通過軟件接口傳輸?shù)脑擃愋畔⒃谶M行測試用例設計時,各參數(shù)取值的范圍劃分和具體大小主要根據(jù)目標公式或系統(tǒng)的邏輯范圍劃分而確定。

      實例2:監(jiān)視控制軟件向工作單元3發(fā)送的飛行器軌道預置指令中,包含切比雪夫x分量、y分量、z分量[8]從0~6階的系數(shù),共18個參數(shù),這些切比雪夫系數(shù)參數(shù)提供軌道計算公式的具體取值。此時的測試用例取值則需要根據(jù)各個參數(shù)在公式計算中的預期軌道位置來確定,即通過軌跡結果來反向確定各參數(shù)值。比如一階切比雪夫系數(shù)x,y,z這3個分量的取值范圍根據(jù)軌道位置計算公式確定為從如下組合中取值,(x,y,z)∈{(0.01, 0.02, 0.04),(0.02, 0.01, 0.03),(0.02, 0.01, 0.05),… },則這些組合共同構成的集合形成有效等價類,除此之外的其他組合形成無效等價類。同時,飛行器處于特定位置(比如剛開始飛行、處于最高點、速率最大點時的位置)時的一階切比雪夫系數(shù)x,y,z組合取值構成測試的邊界值,比如:(x,y,z)∈{(0.01, 0.02, 0.04),(0.03, 0.06, 0.13),(0.12, 0.11, 0.05)}。

      3.2.2狀態(tài)上報類信息測試用例

      1)系統(tǒng)狀態(tài)上報信息

      系統(tǒng)狀態(tài)上報信息是指各工作單元通過傳輸接口將自身運行狀態(tài)即時上報給目標平臺,該類報文信息較長,一般一次性傳輸本單元系統(tǒng)內(nèi)所有工作狀態(tài)。在進行測試用例取值時,需要一方面對工作狀態(tài)情況進行劃分,不同情況各自對應一組測試用例,另一方面還要充分考慮接口傳輸時相鄰報文間時延、因果等關系。相比功能控制指令測試,工作狀態(tài)測試時主要由設備實際運行產(chǎn)生接口報文參數(shù)的取值,即通過對設備進行操作和設置來生成測試用例。狀態(tài)上報類信息具有整體針對性,對于可同時運行和設置的設備,一次上報的接口報文數(shù)據(jù)包能同時反映多個被測目標的工作狀態(tài),產(chǎn)生的測試用例以此檢驗通過接口的被測對象的狀態(tài)信息到達目標平臺后是否能得到及時而正確的處理。

      實例3:在天線單元向監(jiān)視控制軟件發(fā)送的狀態(tài)信息的若干個字節(jié)中,也包含系統(tǒng)變頻器狀態(tài)、模擬器狀態(tài)、功放以及天線狀態(tài)等信息,不同的是由設備產(chǎn)生的接口信息可以在測試時省去考慮接口傳輸時參數(shù)間的關系約束,因為這些約束在對設備的操作過程中就自動產(chǎn)生。在進行該類型的接口報文測試時,首先要考慮設備剛啟動時產(chǎn)生的接口上報信息測試用例,這有助于得到設備在上次運行結束時保持的一些信息可能對于本次運行起初的一些影響情況,同樣道理,在設備運行結束時,也要產(chǎn)生對應接口上報信息的測試用例,這兩段數(shù)據(jù)報文信息屬于邊界值劃分的一種。

      同時,監(jiān)視控制軟件界面上得到的關于天線的狀態(tài)信息主要根據(jù)天線設備的轉動情況進行顯示。面對天線可變方位范圍(-320°,320°)、俯仰范圍(0°,90.000°),在測試天線狀態(tài)的用例設計過程中,由于天線方位和天線俯仰的實際運行位置是允許0.005°范圍誤差的,對天線的方位和俯仰運行狀態(tài)測試可以劃分有效等價類范圍(-320.005,320.005)和(0,90.005),調(diào)試天線運行到這個范圍內(nèi)的其中一個值即為選出的測試用例;同時,天線運行邊界是測試的重點,天線的邊界變成一個范圍而不是某一個值,將天線調(diào)試到邊界狀態(tài),觀察上傳的參數(shù)值有利于測試天線的穩(wěn)定性能,如判斷天線邊界是否穩(wěn)定在方位范圍-320.005°~-319.995°和319.995°~320.005°,俯仰范圍0°~0.005°和89.995°~90.005°內(nèi)。

      2)系統(tǒng)異常信息

      系統(tǒng)異常信息包括設備故障異常、環(huán)境異常、運行數(shù)據(jù)異常等,該類信息的測試主要通過用因果分析里由結果設計原因的方式對應設計測試用例。首先由專家和軟件開發(fā)人員預先評估和統(tǒng)計系統(tǒng)可能存在的若干故障以及導致這些故障的原因,測試人員根據(jù)這些故障調(diào)試、配置系統(tǒng)運行需要的測試用例。此時的測試用例并不是某個具體參數(shù)或參數(shù)集合的取值,而是由一些硬件鏈路故障、設備損壞或一些異常動作組成,此類測試用例的設計也應該注意遵循對故障類型進行劃分、注意故障條件邊界、分析故障因素間關系等這些原則。

      4 測試用例實現(xiàn)

      在運行測試用例前,按照軟件測試需求標準,明確測試用例名稱、標識、追蹤關系、執(zhí)行綜述、前提約束、測試步驟、期望結果與評估標準、終止條件等,建立測試用例統(tǒng)計表,然后在有關專家、軟件開發(fā)人員等進行嚴格評審后方能進行用例的執(zhí)行工作[9]。我們就以上幾種情況中選取了以某監(jiān)視控制軟件為對象,由天線單元向監(jiān)視控制軟件發(fā)送狀態(tài)上報信息的一組報文,如圖2所示。

      圖2 天線單元狀態(tài)上報信息報文

      圖2所示報文包含87個參數(shù),其中框選范圍內(nèi)的各個數(shù)值表示的是變頻器設備各模塊內(nèi)的45個參數(shù),長度共56個字節(jié),其測試用例設計情況如表3所示。此外,表3中還包含第3節(jié)所述報文包頭以及監(jiān)視控制軟件向天線單元發(fā)送的某類功能控制指令和某類非設備報文信息的測試用例設計情況。

      表3 各類報文參數(shù)測試用例設計情況

      表3中,接口報文包頭的參數(shù)個數(shù)里有一個值為保留位,“信源標識”系統(tǒng)參數(shù)、工作單元參數(shù)、設備變化參數(shù)3者組合的有效等價類3個,無效等價類8個,邊界值12個;功能控制指令和非設備報文信息每個參數(shù)取4個邊界值,2個無效等價類;狀態(tài)上報信息包含10組上變頻器、下變頻器、模擬器的上報狀態(tài),這里對于變化范圍只有0或1兩個取值,邊界值個數(shù)取1,無效等價類為0。

      由于軟件接口一次傳輸一組報文,各接口參數(shù)在每次接口傳輸時所選測試用例的執(zhí)行效率是實際測試工作中需要注意的問題:①報文包頭關于控制類的參數(shù)按解析過程選擇測試用例,從前往后依次測試有效等價類中選擇的值和邊界值,從后往前依次測試無效等價類和邊界值,根據(jù)前后參數(shù)存在的邏輯約束關系劃分,該過程在有限次數(shù)內(nèi)可以完成,全部測試通過才可進行數(shù)據(jù)體測試。②功能控制指令類和狀態(tài)上報類參數(shù)根據(jù)各功能模塊選擇測試用例。屬于不同模塊的參數(shù)測試用例取值互不影響,可以在同一次報文傳輸中同時發(fā)送;屬于同一模塊內(nèi)的各個參數(shù)根據(jù)組合情況劃分出等價類和邊界值后分組進行發(fā)送,實際報文發(fā)送次數(shù)要以在可控范圍內(nèi)為前提。

      5 總結

      通過介紹導航地球站軟件接口特點和關于測試用例設計的因果分析、等價類劃分以及邊界值分析這3種方法,概括了導航地球站內(nèi)工作單元接口數(shù)據(jù)包中各參數(shù)類型在幾種接口傳輸情形下結合用例分析方法的取值情況,設計了系統(tǒng)軟件接口控制類和狀態(tài)上報兩大類接口信息特點下的測試用例。將該分類原則和選取方法應用到實際傳輸接口而進行驗證,測試結果證明幾種接口測試用例設計方法能有效用于導航地球站接口軟件測試,使單個接口測試的次數(shù)在可控范圍內(nèi),符合實際需求。

      [1]卡普蘭.GPS原理與應用[M].寇艷紅,譯.2版.北京:電子工業(yè)出版社,2007:3-7.

      [2]謝希仁.計算機網(wǎng)絡[M].北京:電子工業(yè)出版社,2008:180-220.

      [3]趙斌.軟件測試技術經(jīng)典教程[M].上海:科學出版社,2011.

      [4]普雷斯曼.軟件工程實踐者的研究方法[D].鄭人杰,譯.北京:機械工業(yè)出版社,2007:36-46.

      [5]COHEN D,DALAL S,FREDMAN ML,et al.TheAETG system:anapproachtotesting basedoncombinatorial design[J].IEEE Transactions.onsoftwareengineering,1997,23(7):437-44.

      [6]MYERS G J.TheArtofSoftwareTesting[M].2nded.Boston:Wiley,2004:33-70.

      [7]王紅園,郭勇飛,姬琪.面向需求覆蓋的航天軟件測試用例優(yōu)化方法[J].光學精密工程,2014,22(1):228-234.

      [8]劉根友.高精度GPS定位及地殼形變分析若干問題的研究[D].武漢:中國科學院測量與地球物理研究所,2004.

      [9]GJB/Z 141-2004.軍用軟件測試指南[S].中國人民解放軍總裝部,2004.

      Test case design for software interface of GNSS Earth station

      DU Jiang1,2,3,LIU Feng1,2
      (1.National Time Service Center,ChineseAcademy of Sciences,Xi′an 710600,China;2.Key Laboratory of Precision Navigation and Timing Technology,National Time Service Center,ChineseAcademy of Sciences,Xi′an 710600,China;3.University of ChineseAcademy of Sciences,Beijing 100049,China)

      With a view to the software test,the structure and interface of GNSS earth station are introduced and three kinds of test case design methods including causal analysis,equivalence partition and boundary analysis are generalized.The characteristics of interface message including head information,control information and statement reports are analyzed,and the test case design methods for various transmission modes are expounded.The test case design methods have been verified through the test for a part of the interfaces of a navigation station.

      software test;interface test;test case

      TN965

      A

      1674-0637(2015)04-0235-08

      10.13875/j.issn.1674-0637.2015-04-0235-08

      2015-03-25

      中國科學院“西部之光”人才培養(yǎng)計劃資助項目(中國科學院人字〔2014〕91號);國家自然科學基金資助項目(11073022)

      杜江,男,碩士,主要從事星導航系統(tǒng)軟件測試研究。

      猜你喜歡
      邊界值測試用例等價
      基于SmartUnit的安全通信系統(tǒng)單元測試用例自動生成
      如何設計好的測試用例
      價值工程(2020年3期)2020-02-02 04:00:42
      巧用洛必達法則速解函數(shù)邊界值例讀
      讀寫算(2019年11期)2019-08-29 02:04:19
      基于混合遺傳算法的回歸測試用例集最小化研究
      n次自然數(shù)冪和的一個等價無窮大
      中文信息(2017年12期)2018-01-27 08:22:58
      收斂的非線性迭代數(shù)列xn+1=g(xn)的等價數(shù)列
      基于依賴結構的測試用例優(yōu)先級技術
      環(huán)Fpm+uFpm+…+uk-1Fpm上常循環(huán)碼的等價性
      一類帶有Dirichlet邊界值條件的橢圓型方程正解的存在性
      關于環(huán)Fpm+uFpm上常循環(huán)碼的等價性
      龙海市| 楚雄市| 永登县| 南丰县| 秀山| 岱山县| 枣阳市| 湖南省| 曲阜市| 九台市| 稷山县| 竹北市| 济阳县| 田东县| 新郑市| 永昌县| 离岛区| 枣强县| 银川市| 朝阳县| 尚志市| 兰坪| 雅江县| 闵行区| 鲁山县| 汨罗市| 淳化县| 汾阳市| 工布江达县| 昂仁县| 阿荣旗| 奉化市| 河东区| 盈江县| 阳江市| 香港 | 奎屯市| 永善县| 新乡县| 城口县| 宁南县|