• 
    

    
    

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

      一種用于CTCSCTCS半實物仿真系統(tǒng)的測試腳本語言

      2013-05-09 12:47:34柯長博北京全路通信信號研究設(shè)計院有限公司北京100073
      鐵路通信信號工程技術(shù) 2013年1期
      關(guān)鍵詞:腳本語言測系統(tǒng)自動測試

      柯長博 盧 鑫(北京全路通信信號研究設(shè)計院有限公司,北京 100073)

      1 概述

      CTCS列控系統(tǒng)是實現(xiàn)客運專線信號系統(tǒng)的關(guān)鍵技術(shù)裝備,各個列控設(shè)備運行的穩(wěn)定性、互聯(lián)互通性、容錯性等都需要經(jīng)過嚴(yán)格的測試。為了減少測試人員的工作強(qiáng)度,更好地利用資源和提高測試效率,在CTCS-3級半實物仿真平臺上,搭建一個能夠替代人工的自動測試環(huán)境是一個非常重要的課題。而設(shè)計一種能夠滿足CTCS半實物仿真測試平臺測試需求的測試腳本語言,是實現(xiàn)自動測試的基礎(chǔ)。

      如果在自動測試中使用C++、Jav a等普通編程語言,將測試指令和測試邏輯直接嵌入測試代碼中,對于新的測試應(yīng)用,代碼完全不具備可重用性。人們普遍意識到不同的自動測試應(yīng)用之間存在著共通性和框架性的東西,通過重用和重組織已有的解決方案,可以快速實現(xiàn)新的測試應(yīng)用[1]。

      因此,隨著測試技術(shù)的發(fā)展,人們在自動測試中越來越少地直接使用普通編程語言,而是設(shè)計出各種測試腳本語言。測試腳本語言可以對測試行為進(jìn)行描述,對測試過程進(jìn)行建模,有較強(qiáng)的可重用性、可維護(hù)性和可擴(kuò)展性。測試腳本語言執(zhí)行時以解釋為主,具有平臺無關(guān)的特點。典型的測試腳本語言有A TM L[2,3]、CTL[4]、TTCN-3[5,6]等,其中TTCN-3不僅能夠滿足一致性測試的需求,還可以應(yīng)用于互操作性測試、回歸測試、系統(tǒng)測試和集成測試。TTCN-3強(qiáng)大的測試描述能力和廣泛的適應(yīng)性使其成為目前測試領(lǐng)域唯一的國際標(biāo)準(zhǔn)。TTCN-3從語法上看起來像一個普通的程序設(shè)計語言加上測試擴(kuò)展,包括動態(tài)測試配置、匹配機(jī)制、定時器支持、測試判決處理、通信機(jī)制等。

      雖然TTCN-3作為通用的測試語言功能比較全面,但是為其定制開發(fā)測試引擎就會比較復(fù)雜,造成功能上的冗余,也不便于擴(kuò)展開發(fā)新的功能。一般而言,商用化測試工具經(jīng)常采用可讀性較強(qiáng)、較為通用的腳本語言編寫測試腳本;專用測試工具因針對性較強(qiáng),一般會根據(jù)被測試軟件的特點自定義腳本的內(nèi)容和格式,自行解析。針對高速鐵路測試的應(yīng)用,龐巴迪、泰雷茲等公司都開發(fā)了專用的測試語言。事實上,本文中設(shè)計的測試腳本語

      柯長博,男,碩士畢業(yè)于清華大學(xué),工程師。主要從事鐵路通信信號方面的工作。曾參與十一五國家支撐計劃及研究設(shè)計院若干重點項目,發(fā)表論文一篇(EI數(shù)據(jù)源),擁有發(fā)明專利一項(已授權(quán))。言只相當(dāng)于TTCN-3的部分功能。

      現(xiàn)有的腳本語言技術(shù),包括TTCN-3在內(nèi)都集中在數(shù)據(jù)層次的分離,即分離測試數(shù)據(jù)和測試邏輯,并未對測試邏輯本身進(jìn)行建模和表達(dá)。為了解決現(xiàn)有腳本語言存在的抽象層次低和測試腳本維護(hù)困難的問題,測試模型成為當(dāng)前復(fù)雜系統(tǒng)測試領(lǐng)域的研究熱點,模型重用成了降低測試系統(tǒng)開發(fā)成本的系統(tǒng)化過程[7]。

      基于測試過程模型,本文設(shè)計了一種適應(yīng)于CTCS半實物仿真系統(tǒng)的層次化測試腳本語言。測試腳本語言是自動測試環(huán)境運行的基礎(chǔ),定義了測試執(zhí)行的過程,包括測試數(shù)據(jù)、測試事件和測試事件的執(zhí)行邏輯,銜接了自動測試環(huán)境的各個模塊。

      2 測試過程建模

      2.1 測試事件模型

      一個測試事件e是一個八元組(SUT,T,I,O,Cp,Cs,Lp,Ls),其中SUT是被測系統(tǒng)的測試信息集合,T是一個用來定義測試事件運行時行為的前置邏輯表達(dá)式,I是被測系統(tǒng)的輸入集合,O是被測系統(tǒng)的輸出集合,Cp是e的前提條件集合,Cs是e的后置條件集合,Lp是e的前繼連接集合,Ls是e的后繼連接集合[7]。

      測試事件可以被分為3類:測試初始和結(jié)束事件、測試連接和測試動作。其中,測試初始和結(jié)束事件用于標(biāo)識一個測試事件鏈,可以用于通知測試程序創(chuàng)建或者銷毀一個測試實例;測試連接是一個抽象的概念,用于表示測試過程中的控制流程;測試動作指測試腳本的一次執(zhí)行操作,也就是指測試引擎對于被測系統(tǒng)的一次輸入,使被測系統(tǒng)產(chǎn)生一次狀態(tài)轉(zhuǎn)移。由這3類事件連接成了測試事件鏈,如圖1所示。

      2.2 測試過程模型

      一個測試過程是一個五元組(Q,E,L,V,t),其中Q是測試過程開始和結(jié)束標(biāo)簽,E是測試動作集合,L是測試連接集合,V是環(huán)境變量集合,t是一個可選參數(shù),表示測試動作的時間屬性。

      通過將測試過程在事件層次和控制流層次上進(jìn)行抽象,得到了測試過程模型。測試過程模型的核心思想是:通過分析測試需求,測試執(zhí)行過程中的所有行為都可以用測試事件模型表示,每個測試事件都有前提條件和后置條件,通過前提條件和后置條件將測試事件串起來,就將測試過程抽象成了測試事件鏈。

      3 測試腳本語言的設(shè)計

      本章將介紹自定義的測試腳本語言的設(shè)計與實現(xiàn)。

      3.1 XML語言的應(yīng)用

      可擴(kuò)展標(biāo)記語言(Ex tensib le M arkup Langu age,XM L)是W 3C組織于1998年發(fā)布的標(biāo)準(zhǔn)。與H TM L語言一樣,都是標(biāo)準(zhǔn)通用標(biāo)記語言。XM L的優(yōu)點,包括簡單性、平臺無關(guān)性、易解析性、自描述性。此外,XM L在得到普遍認(rèn)可的同時,獲得越來越多的軟件支持。

      本文設(shè)計的測試過程定義語言(TPDL)和測試信息描述語言(SID L)就是基于XM L語言編寫的,語言元素的標(biāo)準(zhǔn)語法由Sch em a定義。采用XM L Schema還能夠?qū)ξ臋n結(jié)構(gòu)進(jìn)行有效性檢查,檢查的項目包括:元素的定義、元素是否為空、是否包括文本或?qū)傩缘亩x、元素之間的父子關(guān)系、子元素的順序和數(shù)目、元素和屬性的數(shù)據(jù)類型。

      3.2 總體結(jié)構(gòu)設(shè)計

      本文設(shè)計的測試腳本語言包括TPDL和SIDL。TPDL作為測試過程的建模語言,是對測試過程的全面描述;SIDL作為被測對象的測試信息描述語言,是對被測對象的測試相關(guān)信息的全面描述。被測系統(tǒng)為測試過程提供了實現(xiàn)消息的發(fā)布,接收等功能的底層機(jī)制。

      具體來說,TPDL用于編寫測試腳本,它將自然語言描述的測試案例抽象為計算機(jī)能識別的形式化描述,由測試引擎編譯執(zhí)行;SIDL用于編寫配置文件,它將被測系統(tǒng)中測試相關(guān)的消息、映射、端口、操作等信息進(jìn)行形式化的描述。在測試腳本的生成和執(zhí)行過程中,都會用到配置文件,比如測試腳本中可以使用的消息,這些消息的具體字段,下發(fā)到被測系統(tǒng)的哪個端口等。TPDL和SIDL的結(jié)構(gòu)和相互關(guān)系,如圖2所示。

      3.3 TPDL的語法定義

      TPDL關(guān)注于相對獨立的測試過程和過程規(guī)則,以及多個測試事件的組織和協(xié)調(diào),從而在整體上形成并發(fā)執(zhí)行的測試過程。TPDL的語法定義,如圖3所示,具體描述如表1所示。

      3.4 SIDL的語法定義

      SIDL描述了被測系統(tǒng)的各種信息,被測對象以SIDL標(biāo)準(zhǔn)的描述方式為測試系統(tǒng)提供測試信息,同時測試樁模塊也以SIDL為測試系統(tǒng)提供控制接口。SIDL編寫的配置文件是自動測試環(huán)境與被測對象的橋梁。

      采取以設(shè)備為單位組織仿真支撐環(huán)境的功能接口,將屬于同一設(shè)備的所有操作,實現(xiàn)為一個描述文件。以設(shè)備為單位,描述對象相對固定,描述方式更簡潔,更統(tǒng)一。對于某個設(shè)備的某一種功能只出現(xiàn)在描述文件的一處,便于文件的編寫和維護(hù),體現(xiàn)了面向?qū)ο蟮幕舅枷搿?/p>

      基于系統(tǒng)規(guī)模和仿真對象數(shù)量的考慮,為系統(tǒng)中每一個對象建立一組描述文件是不現(xiàn)實的,因此測試接口描述只覆蓋到設(shè)備一級,而不是仿真對象一級。如果同一種設(shè)備不管在系統(tǒng)中存在幾個實現(xiàn)的仿真對象,都只維護(hù)一個測試接口描述文件。在測試中,對具體仿真對象的指定,由測試工程師在編制測試腳本時進(jìn)行。SIDL的語法定義,如圖4所示,具體描述如表2所示。

      表1 TPDL語法的具體描述

      表2 SIDL語法的具體描述

      4 測試腳本語言的應(yīng)用

      在測試準(zhǔn)備階段,根據(jù)SIDL規(guī)范對被測系統(tǒng)信息進(jìn)行描述,為每個設(shè)備生成配置文件,建立起測試動作庫、接收消息庫、測試接口庫和消息映射庫等自動測試環(huán)境運行時需要的所有基礎(chǔ)信息。

      在測試腳本的生成階段,腳本編輯器讀取測試動作庫和接收消息庫,將被測系統(tǒng)支持的所有接收和發(fā)送的消息和消息字段匯總。腳本編輯器將基本活動和邏輯活動提供給測試人員,編寫業(yè)務(wù)邏輯、配置測試數(shù)據(jù),生成TPDL規(guī)范定義的XM L格式的測試腳本。最后,可以為測試腳本中的測試動作添加前提條件和后置條件。

      在測試腳本的執(zhí)行階段,由測試管理器根據(jù)消息接口庫為測試腳本中的消息添加目的地址,然后將測試腳本發(fā)送給測試引擎,并監(jiān)控執(zhí)行過程。測試引擎將測試腳本解析成測試事件鏈,根據(jù)消息映射庫將測試腳本中定義的測試動作映射到被測系統(tǒng)中真正能夠執(zhí)行的消息類,并將前提條件和后置條件發(fā)送給綜合測評系統(tǒng)進(jìn)行測試評價。

      5 結(jié)論

      本文提出了一種用于CTCS半實物仿真系統(tǒng)的測試腳本語言?;跍y試過程模型,本測試腳本語言既實現(xiàn)了測試數(shù)據(jù)和測試邏輯的分離,也實現(xiàn)了對測試邏輯本身進(jìn)行建模和表達(dá)。測試交互消息和被測系統(tǒng)信息都通過配置文件描述,有效地填補(bǔ)了測試需求與測試編碼之間的空白。使得自動測試環(huán)境的開發(fā),能夠幾乎只關(guān)注于測試框架的搭建和測試腳本的解析,極大地提高了可維護(hù)性和可擴(kuò)展性。本測試腳本語言基于XM L語言編寫,兼具平臺無關(guān)性、易解析性等優(yōu)點。

      應(yīng)用表明,本測試腳本語言能夠銜接自動測試環(huán)境的各個模塊,滿足了CTCS半實物仿真系統(tǒng)的自動測試需求,也展示了在其他工程中巨大的應(yīng)用潛力。

      [1] XU Xiaoliang,WANG Leyu,ZHOU Hong. An Object-Oriented Framework for Automatic Test Systems[C]. AUTOTESTCON 2003. IEEE Systems Readiness Technology Conference. Proceedings,2003:407-410.

      [2] Seavey M,Einspanjer T. “ATML: WHAT “IT” IS, WHAT “IT” IS NOT, AND AN EXAMPLE OF HOW “IT” CAN BE APPLIED”[C].Autotestcon,2005. IEEE,2005:137-143.

      [3] Jain A,Delgado S. “Implementing ATML into the Automatic Test System Development and Execution Workflow”[C]. IEEE AUTOTESTCON 2008 Salt Lake City, UT,2008:8-11.

      [4] Kapur R,Lousberg M,Taylor T, “CTL the language for describing core-based”[C]. Proceedings of the 2001 IEEE International Test Conference, IEEE Computer Society Washington, DC, USA,2001:131-139.

      [5] Grabowski J,Hogrefe D,Réthy G,et al. “An introduction to the testing and test control notation (TTCN-3)”[J]. Computer Networks,2003,42:375-403.

      [6] JIANG Fan, JI Xiangdong, ZENG Fanping. Design and Implementation of TTCN-3 Test System[J]. Computer Engineering, China,2005,31:80-81.

      [7] Shuai Wang, Yindong Ji, Shiyuan Yang. “A Novel Test Process Modeling Method for Automatic Test”[C]. Computer Science and Information Technology, 2009. ICCSIT 2009. 2nd IEEE International Conference on,2009:459-463.

      猜你喜歡
      腳本語言測系統(tǒng)自動測試
      JXG-50S型相敏軌道電路接收器自動測試臺
      可并行測試的電磁兼容自動測試系統(tǒng)的實現(xiàn)
      電子測試(2018年13期)2018-09-26 03:29:14
      關(guān)于某型雷達(dá)自動測試系統(tǒng)的幾點認(rèn)識和建議
      電子制作(2018年11期)2018-08-04 03:26:00
      一種面向SSC的電信增值業(yè)務(wù)的生成方法及實現(xiàn)
      基于Unity3D的坦克大戰(zhàn)游戲設(shè)計與實現(xiàn)
      防洪非工程措施設(shè)計實例——嘉興市水文巡測系統(tǒng)項目設(shè)計
      電快速瞬變脈沖群對核測系統(tǒng)的影響及對策
      淺析計算機(jī)技術(shù)在flash動畫中的應(yīng)用
      基于廣域量測系統(tǒng)的電力系統(tǒng)綜合負(fù)荷辨識模型的研究
      電測與儀表(2015年8期)2015-04-09 11:50:12
      三維標(biāo)測系統(tǒng)指導(dǎo)下射頻消融治療房顫的護(hù)理觀察
      西平县| 丰宁| 通化市| 昌都县| 涿州市| 长沙市| 和林格尔县| 长垣县| 阿城市| 会东县| 鹿邑县| 铜梁县| 双鸭山市| 吴堡县| 乐平市| 汾西县| 汕头市| 南江县| 通许县| 鸡泽县| 沭阳县| 南京市| 乌苏市| 团风县| 黎平县| 抚州市| 镇坪县| 涟源市| 明溪县| 南澳县| 万盛区| 阜南县| 无极县| 黄浦区| 文登市| 连平县| 宾川县| 横山县| 揭东县| 苗栗县| 分宜县|