国产精品1024永久观看,大尺度欧美暖暖视频在线观看,亚洲宅男精品一区在线观看,欧美日韩一区二区三区视频,2021中文字幕在线观看

  • <option id="fbvk0"></option>
    1. <rt id="fbvk0"><tr id="fbvk0"></tr></rt>
      <center id="fbvk0"><optgroup id="fbvk0"></optgroup></center>
      <center id="fbvk0"></center>

      <li id="fbvk0"><abbr id="fbvk0"><dl id="fbvk0"></dl></abbr></li>

      使用tcl進(jìn)行基站軟件測試的裝置和方法

      文檔序號(hào):7971826閱讀:193來源:國知局
      專利名稱:使用tcl進(jìn)行基站軟件測試的裝置和方法
      使用TCL進(jìn)行基站軟件測試的裝置和方法
      掛未領(lǐng)域
      本發(fā)明涉及計(jì)算機(jī)軟件測試領(lǐng)域,尤其涉及一種基于消息處理軟件(如NodeB軟件)自 動(dòng)化測試的裝置與方法。
      背榮技術(shù)
      TCL (Tool Command Language,工具命令語言),l卯0年發(fā)明,是一種解釋執(zhí)行的腳本 語言?,F(xiàn)已成為一個(gè)流行的腳本描述語言。他內(nèi)含有一套核心的命令集,支持類似C語S的 流程控制if分支判斷、循環(huán)控制、switch控制,支持過程的定義與調(diào)用,并且提供了強(qiáng)大 的數(shù)組、列表與字符串處理功能(如正則表達(dá)式處理)。TCL因其易用性、可擴(kuò)展性、功能全 面與開發(fā)速度快的特征已經(jīng)成為工業(yè)界自動(dòng)測試最常用的語言之一。
      NodeB軟件的特點(diǎn)如下所述軟件分布在各個(gè)單板上,其中一塊作為中心處理板與其它 各塊單板進(jìn)行通訊,同時(shí)NodeB軟件也與網(wǎng)管軟件、RNC進(jìn)行通訊,雖然通訊方式不同,但 是對于應(yīng)用程序來說,都是基于消息處理機(jī)制運(yùn)行。當(dāng)各單板軟件運(yùn)行后,處于接收消息狀 態(tài),當(dāng)接收到消息后進(jìn)行相應(yīng)的處理,處理完成后又處于接收消息狀態(tài)。
      在NodeB的軟件開發(fā)過程中, 一個(gè)常用的測試需求是向某個(gè)單板發(fā)送接口消息,測試目 標(biāo)單板對于該消息的處理是否正常。目前常用的測試方法,在被測軟件中加入一個(gè)UDP消息 接收模塊,該模塊的作用是將接收到的消息轉(zhuǎn)發(fā)到應(yīng)用程序的目的通訊節(jié)點(diǎn)中。這種測試方 法需要編寫一個(gè)發(fā)送消息的應(yīng)用程序sendudpmsg,該應(yīng)用程序使用命令行方式啟動(dòng)ipaddress port msgNo Cnld <msgBody>,各參數(shù)意義如下ipaddress被測試軟件所在單板的IP地址,port 被測試軟件中UDP接收模塊接收消息所用的端口號(hào),msgNo消息號(hào)Cnld被測試軟件通訊 節(jié)點(diǎn)標(biāo)識(shí)(標(biāo)識(shí)一個(gè)單板中不同的通訊節(jié)點(diǎn)),msgBody為可選字段,如果要發(fā)送的消息沒有 消息內(nèi)容,則此參數(shù)不用填寫,如果有消息體,則msgBody為消息體的字節(jié)流(為了敘述方 便使用16進(jìn)制表示)。測試人員首先編寫由sendudpmsg組成的批處理腳本,然后在WINDOWS
      操作系統(tǒng)下執(zhí)行,腳本的格式如下
      假設(shè)消息3457沒有消息體,消息3455的消息體定義如下 struct tagMsgBody
      byte byNum5 word wCfh;
      以上結(jié)構(gòu)體采用緊湊模式存儲(chǔ) 測試腳本如下
      鄉(xiāng)dudpmsg 128.9.22.10 10000 3457 10 郷dudpmsg 128.9.22.11 10000 3455 11 10 ED 5F
      上述腳本先向IP地址為128.9.22.10的單板上軟件Cnld為10的節(jié)點(diǎn)發(fā)送消息3457,無 消息體;再向IP地址為128.9.22.11的單板上軟件Cnld為10的節(jié)點(diǎn)發(fā)送消息3457,消息內(nèi) 容為byNum-16, wCfo=60767
      采用上述的測試方案,缺點(diǎn)如下
      1) 腳本中存在二進(jìn)制碼流,非常不直觀,尤其是復(fù)雜結(jié)構(gòu)數(shù)據(jù)不便于維護(hù),如上例的 10 ED 5F必須根據(jù)消息3455的消息體定義才能明白每一個(gè)字段的值;
      2) 腳本中流程控制較弱,不能進(jìn)行復(fù)雜的組合測試,如上例,只能進(jìn)行順序測試,不能 進(jìn)行遍歷測試、分支測試;
      3) 只能發(fā)送消息,不能自動(dòng)化判斷測試結(jié)果,測試結(jié)果必須人工進(jìn)行判斷,測試效率低;
      4) 腳本中的某些參數(shù)如IP地址以及端口號(hào)不便于腳本移植;
      5) 必須在被測試軟件中加入消息接收模塊才能進(jìn)行測試,需要修改被測試軟件。

      發(fā)明內(nèi)容
      針對現(xiàn)有技術(shù)存在的缺陷和不足,本發(fā)明提供一種使用TCL進(jìn)行基站軟件測試的裝置和方 法,能夠進(jìn)行自動(dòng)化判斷,自動(dòng)判定測試結(jié)果是否正確將數(shù)據(jù)表示與流程分離,各部分能 夠獨(dú)立維護(hù)使用某種通用計(jì)算機(jī)語言表示自動(dòng)化測試流程;同時(shí),使用自定義或者通用描 述語言表示消息數(shù)據(jù);不用修改被測試軟件,就能進(jìn)行測試。
      為了達(dá)到上述發(fā)明目的,本發(fā)明使用TCL進(jìn)行基站軟件測試的裝置,包括與被測軟件的 軟件接口進(jìn)行適配的適配單元、對被測軟件進(jìn)行測試的核心處理單元以及在適配單元和核心 處理單元之間用于二者通訊的通訊模塊;
      其中,核心處理單元通過通訊模塊向適配單元發(fā)送測試消息,適配單元將所述測試消息 轉(zhuǎn)送給所述被測軟件,并將被測軟件發(fā)送的測試消息通過通訊模塊發(fā)送給核心處理單元。
      上述的使用Ta進(jìn)行巻站秋作測試的裝置中,所述核心處理蘋元包括對標(biāo)準(zhǔn)TCL命令 進(jìn)行解釋的標(biāo)準(zhǔn)TCL解釋器模塊,對自動(dòng)化測試處理命令進(jìn)行解釋的TCL擴(kuò)展解釋器模塊, 對測試消息進(jìn)行編解碼的編解碼模塊;
      其中,標(biāo)準(zhǔn)TCL解釋器模塊解釋輸入到核心處理單元的TCL腳本,對于標(biāo)準(zhǔn)TCL命令, 直接翻譯成機(jī)器語言,對于TCL擴(kuò)展命令則交給TCL擴(kuò)展解釋器模塊翻譯,并根據(jù)標(biāo)準(zhǔn)TCL 命令和TCL擴(kuò)展命令向編解碼模塊發(fā)送內(nèi)容為測試命令的測試消息,編解碼模塊將所述測試 消息轉(zhuǎn)化為二進(jìn)制字節(jié)流依次通過通訊模塊和適配單元發(fā)送給被測軟件,并接收通訊模塊轉(zhuǎn) 發(fā)的來自被測軟件的二進(jìn)制字節(jié)流,將其轉(zhuǎn)換成測試消息發(fā)送給TCL擴(kuò)展解釋器模塊,由TCL 擴(kuò)展解釋器模塊分析測試消息并對被測軟件進(jìn)行下一歩自動(dòng)化測試處理。
      上述的使用TCL進(jìn)行基站軟件測試的裝置中,所述TCL擴(kuò)展解釋器模塊包括翻譯TCL擴(kuò) 展命令的TCL擴(kuò)展命令分發(fā)模塊;判斷測試項(xiàng)目合法性,安排測試項(xiàng)目順序的測試管理模塊; 接收從被測軟件發(fā)送來的測試消息,并對測試消息進(jìn)行消息處理的調(diào)度模塊調(diào)用編解碼模 塊進(jìn)行測試消息編碼、解碼的消息管理模塊
      其中,TCL擴(kuò)展解釋器模塊翻譯輸入的TCL擴(kuò)展命令,獲得測試腳本,測試管理模塊按 照測試腳本安排測試項(xiàng)目順序,消息管理模塊調(diào)用編解碼模塊將包含測試項(xiàng)目內(nèi)容的測試消 息進(jìn)行編碼后發(fā)送給被測軟件,被測軟件返回的測試消息經(jīng)消息管理模塊調(diào)用編解碼模塊解 碼后,送至調(diào)度模塊進(jìn)行分析處理。
      上述的使用TCL進(jìn)行基站軟件測試的裝置中,所述通訊模塊包括設(shè)置于適配單元中用 來與核心處理單元中的服務(wù)器端模塊進(jìn)行通訊的通訊模塊客戶端,以及設(shè)置于核心處理單元 中用來與適配單元中的客戶端模塊進(jìn)行通訊的通訊模塊服務(wù)器端。
      上述的使用TCL進(jìn)行基站軟件測試的裝置中,所述適配單元通過消息轉(zhuǎn)發(fā)模塊與被測軟 件的各種接口相適配,所述消息轉(zhuǎn)發(fā)模塊包括與外圍單板上和中心處理板通訊的軟件接口 相適配的TCP通訊服務(wù)器子模塊、與測試中心處理板上和外圍單板通訊的軟件接口相適配的 TCP通訊客戶器子模塊、與測試中心處理板上和網(wǎng)管通訊的軟件接口相適配的RUDP通訊客戶 器子模塊、與測試中心處理板上和RNC的接口相適配的軟件接口 NBAP編解碼子模塊。
      上述的使用TCL進(jìn)行基站軟件測試的裝置中,核心處理單元還包括一定時(shí)器,所述定時(shí) 時(shí)開始計(jì)時(shí),到核心處理單元收到被測軟件返回的測試消息 時(shí)計(jì)時(shí)停止,如果定時(shí)器超時(shí)仍未收到被測軟件返回的測試消息,則通知核心處理單元進(jìn)行 下一個(gè)測試項(xiàng)目。
      一種使用TCL進(jìn)行基站軟件測試的方法,包括以下步驟
      (1) 啟動(dòng)被測軟件和基站軟件測試裝置,在基站軟件測試裝置中加載測試腳本
      (2) 基站軟件測試裝置按照測試腳本對被測軟件進(jìn)行測試;
      (3) 基站軟件測試裝置分析被測軟件返回的測試消息,得到測試結(jié)果。 上述的使用TCL進(jìn)行基站軟件測試的裝置中,步驟(2)進(jìn)一步包括
      (21) 測試管理模塊按照測試腳本安排測試項(xiàng)目順序,消息管理模塊調(diào)用編解碼模塊對 包含測試項(xiàng)目內(nèi)容的測試消息進(jìn)行編碼
      (22) 將編碼后的測試消息發(fā)送給通訊模塊;
      (23) 通訊模塊將編碼后的測試消息通過適配單元發(fā)送給被測軟件。 上述的使用TCL進(jìn)行基站軟件測試的裝置中,歩驟(3)進(jìn)一歩包括
      (31) 被測軟件返回的包含測試結(jié)果的測試消息通過適配單元發(fā)送給通訊模塊;
      (32) 通訊模塊將所述包含測試結(jié)果的測試消息發(fā)送給消息管理模塊;
      (33) 消息管理模塊調(diào)用編解碼模塊對所述包含測試結(jié)果的測試消息進(jìn)行解碼,發(fā)送給 調(diào)度模塊;
      (34) 調(diào)度模塊分析所述包含測試結(jié)果的測試消息,得到測試結(jié)果。
      上述的使用TCL進(jìn)行基站軟件測試的裝置中,在步驟(2)與步驟(3)之間還包括步驟 (A):自核心處理單元發(fā)出測試消息時(shí)開始的一段時(shí)間內(nèi),如果未收到被測軟件返回的測試 消息,則返回步驟(2)進(jìn)行下一個(gè)測試項(xiàng)目。
      采用此技術(shù)方案進(jìn)行基于消息處理的軟件的單元測試、集成測試,有以下好處
      1) 測試人員不需要在被測軟件中添加測試代碼,就可以進(jìn)行測試,非常方便
      2) 采用TCL腳本技術(shù)自動(dòng)控制測試流程,利于進(jìn)行復(fù)雜的組合測試,腳本維護(hù)方便;
      3) 自動(dòng)化判斷測試結(jié)果,節(jié)省了測試人員手動(dòng)分析測試結(jié)果的時(shí)間,尤其是進(jìn)行大量回
      歸測試時(shí)依靠人工判斷測試結(jié)果是不可能的;
      4) 采用TCL語言作為測試腳本語言,容易學(xué)習(xí),便于測試腳本開發(fā);
      5) 便于腳本移植。


      圖l是NodeB軟件構(gòu)架圖; 圖2是本發(fā)明中測試裝置的原理框圖; 圖3是本發(fā)明中適配單元支持的消息轉(zhuǎn)發(fā)模塊類型; 圖4是本發(fā)明中TCL擴(kuò)展命令模塊結(jié)構(gòu)圖。
      具體實(shí)施例方式
      下面結(jié)合附圖對本發(fā)明作進(jìn)一步的詳細(xì)說明
      圖l是NodeB軟件的結(jié)構(gòu)圖,由一塊中心處理板以及多塊外圍處理板組成,中心處理板 通過TCP方式與外圍單板進(jìn)行通訊,同時(shí)NodeB的中心處理板還通過RUDP與網(wǎng)管進(jìn)行通訊, 以及與RNC進(jìn)行通訊,NodeB軟件需要處理NBAP消息。各單板軟件從組成結(jié)構(gòu)上基本上分為 兩大部分,通訊模塊以及上層應(yīng)用軟件,通訊模塊根據(jù)所在單板的作用可以配置為不同的方 式,如在外圍單板上配置了 TCP通訊客戶端與中心處理板上的TCP通訊服務(wù)器端進(jìn)行TCP通 訊,在中心處理板上還配置了 RUDP服務(wù)器與網(wǎng)管進(jìn)行通訊,同時(shí)配置NBAP編解碼模塊與RNC 進(jìn)行NBAP消息交互。本發(fā)明所述的測試目的就是對NodeB中各單板對于以上接口間的消息處 理進(jìn)行測試。圖中每一個(gè)單板還包含一個(gè)UDP接收模塊,是用于接收測試消息(未使用本發(fā) 明的測試方法就需要這個(gè)模塊)。
      本發(fā)明技術(shù)方案的總體框圖如圖2所示,圖2中灰色部分是本發(fā)明中密切相關(guān)部分。
      一種基于消息處理的自動(dòng)化測試裝置,適用于測試各模塊之間采用消息交互的軟件系統(tǒng), 該自動(dòng)化測試裝置包含與被測軟件進(jìn)行適配的適配單元以及核心處理單元。其中核心處理單 元包括對標(biāo)準(zhǔn)TCL命令進(jìn)行解釋的標(biāo)準(zhǔn)TCL解釋器模塊,與對自動(dòng)化測試處理命令進(jìn)行解釋 的TCL擴(kuò)展解釋器模塊,進(jìn)行消息表示與處理的編解碼模塊;適配單元包括消息轉(zhuǎn)發(fā)模塊。 該測試設(shè)備還包括適配單元與核心單元進(jìn)行通訊的通訊模塊。之所以采用TCL語言作為測試 腳本語言,是因?yàn)槠淙菀讓W(xué)習(xí),便于測試腳本開發(fā)。
      適配單元中的消息轉(zhuǎn)發(fā)模塊有多種通訊方式,每--種通訊方式封裝為一個(gè)子模塊,如圖
      3所示,根據(jù)被測軟件的接口不同起用不同的通訊子模塊。TCP通訊服務(wù)器子模塊用于測試外 圍單板上與中心處理板通訊的軟件接口, TCP通訊客戶器子模塊用于測試中心處理板上與外 圍單板通訊的軟件接口, RUDP通訊客戶器子模塊用于測試中心處理板上與網(wǎng)管通訊的軟件接 口, NBAP編解碼子模塊用于測試中心處理板上與RNC進(jìn)行通訊的軟件接口。采用適配單元完 全模擬了被測軟件接口的通訊對端,如啟動(dòng)消息轉(zhuǎn)發(fā)模塊類型為TCP客戶端的適配單元,與 中心處理板進(jìn)行TCP通訊,對于中心處理板來說這種通訊方式與中心處理板與真實(shí)的外圍單 板進(jìn)行通訊完全一致。所以采用適配單元使得不用修改被測試軟件,便于腳本移植。
      核心處理單元能夠與多個(gè)適配單元采用服務(wù)器客戶端方式共同工作,這樣在一次測試時(shí) 可以同時(shí)測試被測軟件的多個(gè)接口,而各適配單元也可根據(jù)需要靈活的與各計(jì)算機(jī)連接。另 一種構(gòu)架是取消獨(dú)立的適配單元,消息轉(zhuǎn)發(fā)模塊直接嵌入到中心處理單元,但是這種方法使 得多個(gè)適配單元無法分布運(yùn)行在不同的計(jì)算機(jī)上,所以本發(fā)明并未采用這種構(gòu)架。
      編解碼模塊中包含如下特征消息編碼與消息解碼。消息編碼包括從消息實(shí)例文件中讀 取消息結(jié)構(gòu)與消息字段值,修改消息中某個(gè)字段的值,將消息中每一個(gè)字段的值編碼為二進(jìn) 制字節(jié)流。消息解碼包括從消息模板中讀取消息結(jié)構(gòu),將二進(jìn)制字節(jié)流根據(jù)消息模板的定義 解碼為消息結(jié)構(gòu),獲取消息中某個(gè)字段的值。現(xiàn)有腳本中存在二進(jìn)制碼流,非常不直觀,尤 其是復(fù)雜結(jié)構(gòu)數(shù)據(jù)不便于維護(hù),本發(fā)明加入編解碼模塊后,測試人員不需要在被測軟件中添 加測試代碼,就可以進(jìn)行測試,非常方便。
      核心處理單元中TCL擴(kuò)展命令模塊又分為TCL擴(kuò)展命令分發(fā)模塊、調(diào)度模塊、測試管理 模塊與消息管理模塊,如圖4所示。
      測試管理模塊從邏輯上將測試分為測試計(jì)劃、測試任務(wù)與測試用例, 一個(gè)測試計(jì)劃包含 多個(gè)測試任務(wù),第一個(gè)測試任務(wù)執(zhí)行完畢,系統(tǒng)自動(dòng)執(zhí)行第二個(gè)測試任務(wù),下一個(gè)測試任務(wù) 的執(zhí)行依次類推; 一個(gè)測試任務(wù)包含多個(gè)測試用例, 一個(gè)測試用例執(zhí)行完畢后系統(tǒng)自動(dòng)運(yùn)行 下一個(gè)測試用例。測試管理模塊根據(jù)當(dāng)前測試腳本的上下文進(jìn)行合法性判斷,如在測試計(jì)劃 中只能執(zhí)行測試任務(wù),不能執(zhí)行測試用例,在測試任務(wù)中只能執(zhí)行測試用例不能執(zhí)行另外的 測試任務(wù)。所述的測試管理模塊還完成如創(chuàng)建測試計(jì)劃、啟動(dòng)測試任務(wù)、啟動(dòng)適配單元、啟 動(dòng)測試用例、退出測試用例、退出適配單元、退出測試任務(wù)等工作。
      所述的消息管理模塊調(diào)用編解碼模塊提供的接口完成從消息模板中裝載消息結(jié)構(gòu)、從消
      息實(shí)例中裝載消息結(jié)構(gòu)與消息字段值、編碼消息、解碼消息、獲取與修改消息字段的值以及 發(fā)送消息等功能。
      所述的調(diào)度模塊在運(yùn)行過程中處于接收消息過程中,當(dāng)接收到被測軟件發(fā)送來的消息或 者接收到定時(shí)器超時(shí)的消息,調(diào)用當(dāng)前測試用例的消息處理函數(shù)進(jìn)行處理。
      基于消息的自動(dòng)化測試方法,適用于測試基于消息處理的軟件系統(tǒng),包括以下步驟
      1) 使用文件文件描述被測試軟件輸入輸出消息的模板,該消息模板只包括抽象的消息定 義,不包括消息中具體的字段的取值
      2) 根據(jù)消息模板文件以及要測試的具體目的生成一個(gè)或者多個(gè)消息實(shí)例文件,消息實(shí)例 文件中包括消息中每一個(gè)字段的取值;
      3) 編寫TCL腳本文件,該腳本文件中除了可以使用標(biāo)準(zhǔn)的TCL命令,還可以使用擴(kuò)展的 命令,用于指定測試過程,控制適配單元的運(yùn)行,向被測軟件發(fā)送消息,接收從被測發(fā)送來 的消息,進(jìn)行自動(dòng)化判斷測試過程,輸出報(bào)表;
      4) 啟動(dòng)被測試軟件;
      5) 啟動(dòng)核心處理單元,加載并運(yùn)行編寫的TCL腳本,測試過程會(huì)按照腳本定義自動(dòng)進(jìn)行, 測試中間過程以及測試是否通過等信息打印到報(bào)表文件中;
      6) 根據(jù)最后的報(bào)表文件觀察測試結(jié)果。
      按照上述方法進(jìn)行測試時(shí),主要的工作在于編寫表示測試流程的TCL腳本以及表示消息 結(jié)構(gòu)的消息模板與表示消息數(shù)據(jù)的消息實(shí)例。如果接口消息不變化,則消息模板文件與消息 實(shí)例文件只要編寫一次即可。TCL腳本文件需要根據(jù)測試目的不同編寫不同的腳本。
      下面詳細(xì)介紹一下整個(gè)方案的流程
      核心處理單元啟動(dòng)后,裝載TCL測試腳本,根據(jù)腳本中的內(nèi)容首先建立一個(gè)測試計(jì)劃, 在測試計(jì)劃下創(chuàng)建第一個(gè)測試任務(wù)并運(yùn)行,在測試任務(wù)中啟動(dòng)所需要的適配單元,并且啟動(dòng) 第一個(gè)測試用例,當(dāng)?shù)谝粋€(gè)測試用例運(yùn)行完畢后執(zhí)行第二個(gè)用例,該任務(wù)下的所有測試用例 執(zhí)行完畢后停止啟動(dòng)的適配單元,退出該測試任務(wù);以此類推完成當(dāng)前測試計(jì)劃下的所有測 試任務(wù),并退出當(dāng)前測試計(jì)劃;這樣直到執(zhí)行完所有的測試計(jì)劃,整個(gè)測試過程完畢。此舉 加強(qiáng)了流程控制,腳本維護(hù)方便。在執(zhí)行測試用例時(shí),在完成必要的初始化以及其他動(dòng)作(如 向被測試軟件發(fā)送消息)后,進(jìn)入到接收消息的狀態(tài)中,適配單元啟動(dòng)后,如果接收到被測
      軟件發(fā)送來的消息,重新編碼后發(fā)送到核心處理單元的調(diào)度模塊,調(diào)度模塊調(diào)用消息編解碼 模塊的解碼功能按照對應(yīng)的消息模板進(jìn)行解碼,消息解碼后則調(diào)用測試用例中的消息處理函 數(shù)進(jìn)行處理。為了防止測試單元在很長時(shí)間內(nèi)都收不到被測軟件發(fā)送的消息,核心處理單元 提供定時(shí)器功能,啟動(dòng)定時(shí)器后直到定時(shí)器超時(shí)仍然沒有收到預(yù)期的消息則可以進(jìn)行其他的 處理(根據(jù)實(shí)際情況,有可能以測試失敗的方式退出測試用例,有可能繼續(xù)進(jìn)行其他測試交 互)。如果TCL腳本中要向被測試軟件發(fā)送消息,擴(kuò)展TCL命令模塊中的消息管理模塊調(diào)用 編解碼模塊的編碼功能進(jìn)行消息編碼,然后調(diào)用通訊模塊發(fā)送到適配單元,適配單元通過消 息轉(zhuǎn)發(fā)模塊將消息發(fā)送到被測軟件。
      測試用例腳本中完成測試的自動(dòng)化判斷,方法一基于消息的判斷;方法二根據(jù)被測 軟件打印信息提取特征字符串進(jìn)行判斷。方法一主要用于被測軟件在相應(yīng)的接口中有消息交 互,例如,被測軟件會(huì)發(fā)送某一個(gè)消息,同時(shí)消息中的某些字段的值有預(yù)期結(jié)果。為了在TCL 用例中進(jìn)行自動(dòng)化檢測,首先設(shè)置定時(shí)器,同時(shí)在定時(shí)器超時(shí)處理函數(shù)中以測試失敗的結(jié)果 退出測試用例,如果在指定時(shí)間收到預(yù)期消息,進(jìn)一步獲取消息中某些字段的值,逐條判斷 這些字段的值是否與期望的值相等,如果不相等則以測試失敗的結(jié)果退出測試用例。方法二 主要用于無法用方法一進(jìn)行判斷的場合,被測軟^^在運(yùn)行過程中將一些信息打印到log文件 中,測試用例腳本讀取文件并査找相關(guān)信息,如果與期望的特征字符串一致則以測試成功的 結(jié)果退出測試用例,否則以測試失敗的結(jié)果退出測試用例。自動(dòng)化判斷測試結(jié)果,節(jié)省了測 試人員手動(dòng)分析測試結(jié)果的時(shí)間,尤其是進(jìn)行大量回歸測試時(shí)依靠人工判斷測試結(jié)果是不可 能的。
      為了描述本發(fā)明,使用NodeB作為被測試軟件進(jìn)行具體描述,但是本發(fā)明不限于僅測試 NodeB軟件,本發(fā)明可以應(yīng)用到任何分布式、基于消息處理的軟件中。
      本發(fā)明經(jīng)過在NodeB產(chǎn)品的單元測試與集成測試實(shí)際使用,效果良好。同時(shí)本發(fā)明還應(yīng) 用到每日冒煙測試過程中,也起到很大的作用。
      權(quán)利要求
      1、一種使用TCL進(jìn)行基站軟件測試的裝置,其特征在于包括與被測軟件的軟件接口進(jìn)行適配的適配單元、對被測軟件進(jìn)行測試的核心處理單元以及在適配單元和核心處理單元之間用于二者通訊的通訊模塊;其中,核心處理單元通過通訊模塊向適配單元發(fā)送測試消息,適配單元將所述測試消息轉(zhuǎn)送給所述被測軟件,并將被測軟件發(fā)送的測試消息通過通訊模塊發(fā)送給核心處理單元。
      2、 根據(jù)權(quán)利要求1所述的使用TCL進(jìn)行基站軟件測試的裝置,其特征在于所述核心處 理單元包括對標(biāo)準(zhǔn)TCL命令進(jìn)行解釋的標(biāo)準(zhǔn)TCL解釋器模塊,對自動(dòng)化測試處理命令進(jìn)行 解釋的TCL擴(kuò)展解釋器模塊,對測試消息進(jìn)行編解碼的編解碼模塊;其中,標(biāo)準(zhǔn)TCL解釋器模塊解釋輸入到核心處理單元的TCL腳本,對于標(biāo)準(zhǔn)TCL命令, 直接翻譯成機(jī)器語言,對于TCL擴(kuò)展命令則交給TCL擴(kuò)展解釋器模塊翻譯,并根據(jù)標(biāo)準(zhǔn)TCL 命令和TCL擴(kuò)展命令向編解碼模塊發(fā)送內(nèi)容為測試命令的測試消息,編解碼模塊將所述測試 消息轉(zhuǎn)化為二進(jìn)制字節(jié)流依次通過通訊模塊和適配單元發(fā)送給被測軟件,并接收通訊模塊轉(zhuǎn) 發(fā)的來自被測軟件的二進(jìn)制字節(jié)流,將其轉(zhuǎn)換成測試消息發(fā)送給TCL擴(kuò)展解釋器模塊,由TCL 擴(kuò)展解釋器模塊分析測試消息并對被測軟件進(jìn)行下一步自動(dòng)化測試處理。
      3、 根據(jù)權(quán)利要求2所述的使用TCL進(jìn)行基站軟件測試的裝置,其特征在于所述TCL擴(kuò) 展解釋器模塊包括翻譯TCL擴(kuò)展命令的TCL擴(kuò)展命令分發(fā)模塊;判斷測試項(xiàng)目合法性,安排 測試項(xiàng)目順序的測試管理模塊;接收從被測軟件發(fā)送來的測試消息,并對測試消息進(jìn)行消息 處理的調(diào)度模塊;調(diào)用編解碼模塊進(jìn)行測試消息編碼、解碼的消息管理模塊;其中,TCL擴(kuò)展解釋器模塊翻譯輸入的TCL擴(kuò)展命令,獲得測試腳本,測試管理模塊按 照測試腳本安排測試項(xiàng)目順序,消息管理模塊調(diào)用編解碼模塊將包含測試項(xiàng)目內(nèi)容的測試消 息進(jìn)行編碼后發(fā)送給被測軟件,被測軟件返回的測試消息經(jīng)消息管理模塊調(diào)用編解碼模塊解 碼后,送至調(diào)度模塊進(jìn)行分析處理。
      4、 根據(jù)權(quán)利要求1所述的使用TCL進(jìn)行基站軟件測試的裝置,其特征在于所述通訊模 塊包括設(shè)置于適配單元中用來與核心處理單元中的服務(wù)器端模塊進(jìn)行通訊的通訊模塊客戶 端,以及設(shè)置于核心處理單元中用來與適配單元中的客戶端模塊進(jìn)行通訊的通訊模塊服務(wù)器 端。
      5、 根據(jù)權(quán)利要求1所述的使用TCL進(jìn)行基站軟件測試的裝置,其特征在于所述適配單 元通過消息轉(zhuǎn)發(fā)模塊與被測軟件的各種接口相適配,所述消息轉(zhuǎn)發(fā)模塊包括與外圍單板上和中心處理板通訊的軟件接口相適配的TCP通訊服務(wù)器子模塊、與測試中心處理板上和外圍 單板通訊的軟件接口相適配的TCP通訊客戶器子模塊、與測試中心處理板上和網(wǎng)管通訊的軟 件接口相適配的RUDP通訊客戶器子模塊、與測試中心處理板上和RNC的接口相適配的軟件接 口NBAP編解碼子模塊。
      6、 根據(jù)權(quán)利要求1所述的使用TCL進(jìn)行基站軟件測試的裝置,其特征在于核心處理單 元還包括一定時(shí)器,所述定時(shí)器自核心處理單元發(fā)出測試消息時(shí)開始計(jì)時(shí),到核心處理單元 收到被測軟件返回的測試消息時(shí)計(jì)時(shí)停止,如果定時(shí)器超時(shí)仍未收到被測軟件返回的測試消 息,則通知核心處理單元進(jìn)行下一個(gè)測試項(xiàng)目。
      7、 一種使用TCL進(jìn)行基站軟件測試的方法,其特征在于包括以下歩驟(1) 啟動(dòng)被測軟件和基站軟件測試裝置,在基站軟件測試裝置中加載測試腳本;(2) 基站軟件測試裝置按照測試腳本對被測軟件進(jìn)行測試;(3) 基站軟件測試裝置分析被測軟件返回的測試消息,得到測試結(jié)果。
      8、 根據(jù)權(quán)利要求7所述的使用TCL進(jìn)行基站軟件測試的方法,其特征在于步驟(2) 進(jìn)一步包括(21) 測試管理模塊按照測試腳本安排測試項(xiàng)目順序,消息管理模塊調(diào)用編解碼模塊對 包含測試項(xiàng)目內(nèi)容的測試消息進(jìn)行編碼(22) 將編碼后的測試消息發(fā)送給通訊模塊;(23) 通訊模塊將編碼后的測試消息通過適配單元發(fā)送給被測軟件。
      9、 根據(jù)權(quán)利要求7所述的使用TCL進(jìn)行基站軟件測試的方法,其特征在于步驟(3) 進(jìn)一步包括(31) 被測軟件返回的包含測試結(jié)果的測試消息通過適配單元發(fā)送給通訊模塊(32) 通訊模塊將所述包含測試結(jié)果的測試消息發(fā)送給消息管理模塊;(33) 消息管理模塊調(diào)用編解碼模塊對所述包含測試結(jié)果的測試消息進(jìn)行解碼,發(fā)送給 調(diào)度模塊(34) 調(diào)度模塊分析所述包含測試結(jié)果的測試消息,得到測試結(jié)果。
      10、 根據(jù)權(quán)利要求8所述的使用TCL進(jìn)行基站軟件測試的方法,其特征在于在步驟(2) 與步驟(3)之間還包括步驟(A):自核心處理單元發(fā)出測試消息時(shí)開始的一段時(shí)間內(nèi),如果未收到被測軟件返回的測試消息,則返回步驟(2)進(jìn)行下一個(gè)測試項(xiàng)目。
      全文摘要
      本發(fā)明公開了一種使用TCL進(jìn)行基站軟件測試的裝置和方法。現(xiàn)有測試方案,不直觀,不便于維護(hù),不能進(jìn)行組合測試,測試效率低;不便于腳本移植;需要修改被測試軟件。為解決上述問題,本發(fā)明包括與被測軟件的軟件接口進(jìn)行適配的適配單元、對被測軟件進(jìn)行測試的核心處理單元以及在適配單元和核心處理單元之間用于二者通訊的通訊模塊;使用TCL進(jìn)行基站軟件測試的方法,包括以下步驟(1)在基站軟件測試裝置中加載測試腳本;(2)對被測軟件進(jìn)行測試;(3)分析被測軟件返回的測試消息,得到測試結(jié)果。本發(fā)明腳本維護(hù)方便;自動(dòng)化判斷測試結(jié)果;容易學(xué)習(xí),便于測試腳本開發(fā);便于腳本移植,適用于各種軟件測試環(huán)境。
      文檔編號(hào)H04W24/04GK101170785SQ20061015001
      公開日2008年4月30日 申請日期2006年10月24日 優(yōu)先權(quán)日2006年10月24日
      發(fā)明者郭素光 申請人:中興通訊股份有限公司
      網(wǎng)友詢問留言 已有0條留言
      • 還沒有人留言評論。精彩留言會(huì)獲得點(diǎn)贊!
      1