專利名稱::可重用測(cè)試消息適配方法及系統(tǒng)的制作方法
技術(shù)領(lǐng)域:
:本發(fā)明涉及對(duì)釆用不同消息格式的被測(cè)實(shí)體進(jìn)行測(cè)試時(shí)的消息適配的方法及系統(tǒng),尤其涉及一種針對(duì)嵌入式系統(tǒng)中被測(cè)實(shí)體的可重用測(cè)試消息適配方法及裝置。
背景技術(shù):
:對(duì)軟件進(jìn)行系統(tǒng)測(cè)試時(shí),理論上常會(huì)借鑒黑盒方法。測(cè)試環(huán)境主要組成部分之一的商業(yè)化測(cè)試工具通常都釆用標(biāo)準(zhǔn)通信協(xié)議,如HTTP、FTP或基于TCP/IP的Socket,與被測(cè)實(shí)體進(jìn)行通信。如果被測(cè)實(shí)體也釆用上述的標(biāo)準(zhǔn)協(xié)議與外部環(huán)境交互,則構(gòu)建測(cè)試環(huán)境時(shí)就無(wú)需進(jìn)行復(fù)雜繁瑣的測(cè)試消息適配。事實(shí)上,由于嵌入式系統(tǒng)的計(jì)算資源緊缺、且注重運(yùn)行效率和實(shí)時(shí)性能,大量被測(cè)的嵌入式軟件通常會(huì)采用各種自定義的非標(biāo)準(zhǔn)協(xié)議與其他嵌入式系統(tǒng)部件通信,因此,對(duì)嵌入式軟件進(jìn)行系統(tǒng)測(cè)試時(shí)就必須構(gòu)建獨(dú)立的消息適配體來(lái)保證與商業(yè)化的測(cè)試工具的通訊格式的對(duì)接,從而發(fā)揮商業(yè)化的測(cè)試工具在測(cè)試開(kāi)發(fā)、運(yùn)行和管理上的優(yōu)勢(shì)。嵌入式軟件與模擬嵌入式系統(tǒng)其他部分的測(cè)試運(yùn)行體(ETS,ExecutableTestSuite)通常被部署在不同的運(yùn)算硬件平臺(tái)上,測(cè)試運(yùn)行體通過(guò)異步方式與嵌入式被測(cè)軟件通信?;谥庇X(jué)構(gòu)建的測(cè)試消息適配體通常釆用和被測(cè)應(yīng)用(AUT,ApplicationUnderTest)相似的傳輸技術(shù),將抽象測(cè)試用例(ATS,AbstractTestSuite)中定義的端口或通道影射成AUT支持的消息尋址標(biāo)識(shí)。必要時(shí)完成網(wǎng)絡(luò)信息傳送必需的消息本地表示形式到網(wǎng)絡(luò)傳送格式的相互轉(zhuǎn)換。然而,嵌入式系統(tǒng)種類繁多,嵌入式軟件與其他嵌入式系統(tǒng)組件的通信方式同樣千變?nèi)f化,如果設(shè)計(jì)實(shí)現(xiàn)測(cè)試消息適配體時(shí)只考慮特定被測(cè)軟件的通信方式,則需要對(duì)每種被測(cè)軟件設(shè)計(jì)實(shí)現(xiàn)一種特定的測(cè)試消息適配體。不同測(cè)試消息適配體之間的功能雖有諸多相似,但實(shí)現(xiàn)卻缺少共同處,造成代碼的重用率低、通用性差、構(gòu)造測(cè)試環(huán)境繁瑣復(fù)雜等諸多技術(shù)缺陷。
發(fā)明內(nèi)容有鑒于此,本發(fā)明的主要目的之一在于提供一種可重用的測(cè)試消息適配方法,以解決在對(duì)嵌入式軟件進(jìn)行測(cè)試時(shí)測(cè)試消息適配體的代碼重用率低、通用性差、需要重復(fù)定義的技術(shù)缺陷,為達(dá)到上述目的,本發(fā)明的技術(shù)方案是這樣實(shí)現(xiàn)的一種可重用測(cè)試消息適配方法,包括步驟A、通過(guò)配置接口識(shí)別測(cè)試用例運(yùn)行體的消息格式,建立測(cè)試消息適配體與測(cè)試用例運(yùn)行體之間的消息接口;B、通過(guò)配置接口識(shí)別被測(cè)應(yīng)用的消息格式,建立測(cè)試消息適配體與被測(cè)應(yīng)用之間的消息接口;C、通過(guò)所述測(cè)試消息適配體建立所述測(cè)試用例運(yùn)行體與所述被測(cè)應(yīng)用之間的承載通道;D、依測(cè)試用例邏輯對(duì)被測(cè)應(yīng)用進(jìn)行測(cè)試。基于上述技術(shù)方案,更進(jìn)一步地,步驟A中,由測(cè)試消息適配體中的測(cè)試用例運(yùn)行體接口服務(wù)單元導(dǎo)入測(cè)試用例運(yùn)行體的消息格式描述文件,經(jīng)解析后識(shí)別所述測(cè)試用例運(yùn)行體的消息格式;步驟B中,由測(cè)試消息適配體中的被測(cè)應(yīng)用接口服務(wù)單元導(dǎo)入被測(cè)應(yīng)用的消息格式描述文件,經(jīng)解析后識(shí)別所述被測(cè)應(yīng)用的消息格式。更進(jìn)一步地,可通過(guò)一個(gè)或多個(gè)測(cè)試用例運(yùn)行體接口服務(wù)單元提供所述測(cè)試消息適配體與測(cè)試用例運(yùn)行體之間的消息接口;可通過(guò)一個(gè)或多個(gè)被測(cè)應(yīng)用接口服務(wù)單元提供測(cè)試消息適配體與被測(cè)應(yīng)用之間的消息接口;測(cè)試用例運(yùn)行體接口服務(wù)單元與所述被測(cè)應(yīng)用接口服務(wù)單元之間可通過(guò)一個(gè)或多個(gè)測(cè)試消息轉(zhuǎn)發(fā)單元實(shí)現(xiàn)測(cè)試消息的轉(zhuǎn)發(fā)。更進(jìn)一步地,由測(cè)試用例運(yùn)行體和測(cè)試用例運(yùn)行體接口服務(wù)單元構(gòu)成測(cè)試節(jié)點(diǎn),由測(cè)試消息轉(zhuǎn)發(fā)單元構(gòu)成轉(zhuǎn)發(fā)節(jié)點(diǎn),由被測(cè)應(yīng)用和被測(cè)應(yīng)用接口服務(wù)單元構(gòu)成被測(cè)節(jié)點(diǎn),步驟C中,在建立所述承載通道之前還包括建立測(cè)試節(jié)點(diǎn)、轉(zhuǎn)發(fā)節(jié)點(diǎn)及被測(cè)節(jié)點(diǎn)間的路由關(guān)系的步驟。更進(jìn)一步地,節(jié)點(diǎn)(包括測(cè)試節(jié)點(diǎn)、轉(zhuǎn)發(fā)節(jié)點(diǎn)、被測(cè)節(jié)點(diǎn))在收到建立承載通道的請(qǐng)求后的處理步驟如下Cl、判斷待創(chuàng)建的承載通道的狀態(tài)是否為未使用狀態(tài),若是,則執(zhí)行步驟C2;C2、向當(dāng)前節(jié)點(diǎn)的后向節(jié)點(diǎn)發(fā)送建立承載通道請(qǐng)求,等待后向節(jié)點(diǎn)反饋完成響應(yīng)消息后執(zhí)行步驟C3;C3、更新當(dāng)前節(jié)點(diǎn)所述承載通道狀態(tài)標(biāo)識(shí)為使用狀態(tài);C4、更新當(dāng)前節(jié)點(diǎn)承載快速索引表;C5、向當(dāng)前節(jié)點(diǎn)的前向節(jié)點(diǎn)發(fā)送完成響應(yīng)消息。更進(jìn)一步地,步驟D中,在進(jìn)行測(cè)試時(shí),測(cè)試消息由所述測(cè)試用例運(yùn)行體流向所述被測(cè)應(yīng)用的步驟如下D01、測(cè)試用例運(yùn)行體發(fā)送的測(cè)試消息由測(cè)試用例運(yùn)行體接口服務(wù)單元轉(zhuǎn)換為測(cè)試消息適配體內(nèi)部消息格式后發(fā)送給測(cè)試消息轉(zhuǎn)發(fā)單元;D02、測(cè)試消息轉(zhuǎn)發(fā)單元將格式轉(zhuǎn)換后的測(cè)試消息轉(zhuǎn)發(fā)給被測(cè)應(yīng)用接口服務(wù)單元;D03、被測(cè)應(yīng)用接口服務(wù)單元將格式轉(zhuǎn)換后的測(cè)試消息轉(zhuǎn)換為被測(cè)應(yīng)用的消息格式后發(fā)送給被測(cè)應(yīng)用;測(cè)試消息由被測(cè)應(yīng)用流向測(cè)試用例運(yùn)行體的步驟如下Dll、被測(cè)應(yīng)用發(fā)送的測(cè)試消息通過(guò)被測(cè)應(yīng)用接口服務(wù)單元轉(zhuǎn)換為測(cè)試消息適配體內(nèi)部消息格式后發(fā)送給測(cè)試消息轉(zhuǎn)發(fā)單元;D12、測(cè)試消息轉(zhuǎn)發(fā)單元將格式轉(zhuǎn)換后的測(cè)試消息轉(zhuǎn)發(fā)給測(cè)試用例運(yùn)行體接口服務(wù)單元;D13、測(cè)試用例運(yùn)行體接口服務(wù)單元將格式轉(zhuǎn)換后的測(cè)試消息轉(zhuǎn)換成測(cè)試7用例運(yùn)行體消息格式后發(fā)送給測(cè)試用例運(yùn)行體。更進(jìn)一步地,消息適配體內(nèi)部的邏輯實(shí)體間的消息通信格式由消息類型標(biāo)識(shí)字段、數(shù)據(jù)長(zhǎng)度字段及數(shù)據(jù)載荷字段組成,若消息類型標(biāo)識(shí)字段中的值小于設(shè)定的值時(shí)表示該消息中的數(shù)據(jù)載荷字段承載的是命令參數(shù),若消息類型標(biāo)識(shí)字段中的值不小于設(shè)定的值,則表示該消息中的數(shù)據(jù)載荷字段承載的是數(shù)據(jù)。更進(jìn)一步地,以大于所述設(shè)定值的以2的正整數(shù)倍為分隔的一組奇偶數(shù)來(lái)作為所述消息類型標(biāo)識(shí)字段的值,用于區(qū)分和標(biāo)識(shí)同一承載通道上的同一條路由中不同方向的消息。本發(fā)明的另一目的是提供一種可重用測(cè)試消息適配系統(tǒng),技術(shù)方案如下一種可重用測(cè)試消息適配系統(tǒng),包括測(cè)試用例運(yùn)行體,被測(cè)應(yīng)用,還包括用于為測(cè)試用例運(yùn)行體及被測(cè)應(yīng)用提供消息適配的測(cè)試消息適配體,測(cè)試消息適配體包括測(cè)試用例運(yùn)行體接口服務(wù)單元,用于提供所述測(cè)試用例運(yùn)行體與所述測(cè)試消息適配體之間的接口服務(wù);被測(cè)應(yīng)用接口服務(wù)單元,用于提供所述被測(cè)應(yīng)用與所述測(cè)試消息適配體之間的接口服務(wù);測(cè)試消息轉(zhuǎn)發(fā)單元,用于在所述測(cè)試用例運(yùn)行體接口服務(wù)單元與所述被測(cè)應(yīng)用接口服務(wù)單元之間進(jìn)行消息轉(zhuǎn)發(fā)。基于上述技術(shù)方案,更進(jìn)一步地,在進(jìn)行容量/壓力測(cè)試時(shí),所述測(cè)試消息適配體可同時(shí)連接多個(gè)測(cè)試用例運(yùn)行體和多個(gè)被測(cè)應(yīng)用,一個(gè)或多個(gè)測(cè)試用例運(yùn)行體可與一個(gè)或多個(gè)測(cè)試用例運(yùn)行體接口服務(wù)單元連接;一個(gè)或多個(gè)被測(cè)應(yīng)用可與一個(gè)或多個(gè)被測(cè)應(yīng)用接口服務(wù)單元連接;一個(gè)或多個(gè)測(cè)試用例運(yùn)行體接口服務(wù)單元可與一個(gè)或多個(gè)測(cè)試消息轉(zhuǎn)發(fā)單元連接,多個(gè)測(cè)試消息轉(zhuǎn)發(fā)單元之間可建立路由。更進(jìn)一步地,測(cè)試用例運(yùn)行體接口服務(wù)單元包含一個(gè)用于導(dǎo)入和識(shí)別測(cè)試用例運(yùn)行體的消息格式的配置接口;被測(cè)應(yīng)用接口服務(wù)單元包含一個(gè)用于導(dǎo)入和識(shí)別被測(cè)應(yīng)用的消息格式的配置接口由于本發(fā)明以標(biāo)準(zhǔn)接口將測(cè)試運(yùn)行體通過(guò)測(cè)試消息適配體與被測(cè)應(yīng)用關(guān)聯(lián)起來(lái),通過(guò)標(biāo)準(zhǔn)的描述接口識(shí)別被測(cè)應(yīng)用的消息格式,從而減少對(duì)測(cè)試消息適配層的重復(fù)定義,通用性強(qiáng),能方便地應(yīng)用于釆用不同測(cè)試工具針對(duì)不同被測(cè)應(yīng)用的測(cè)試環(huán)境,極大的減少構(gòu)造通信方式各異的測(cè)試消息適配體時(shí)的人力和物力投入,降低測(cè)試工作的復(fù)雜性和技術(shù)風(fēng)險(xiǎn)。圖1為本發(fā)明所述系統(tǒng)的邏輯結(jié)構(gòu)圖2為本發(fā)明測(cè)試消息適配體的邏輯結(jié)構(gòu)圖3為本發(fā)明嵌入式應(yīng)用容量/壓力測(cè)試時(shí)部署方式圖4為本發(fā)明所述方法的主體流程圖5為本發(fā)明當(dāng)前節(jié)點(diǎn)增加路由的流程圖6為本發(fā)明當(dāng)前節(jié)點(diǎn)刪除路由的流程圖7為本發(fā)明當(dāng)前節(jié)點(diǎn)建立承載通道的流程圖8為本發(fā)明當(dāng)前節(jié)點(diǎn)拆除承載通道的流程圖9為本發(fā)明當(dāng)前節(jié)點(diǎn)對(duì)節(jié)點(diǎn)間所傳輸消息的處理流程圖IO為本發(fā)明邏輯實(shí)體間創(chuàng)建傳輸承載的協(xié)作流程;圖11為本發(fā)明邏輯實(shí)體間移除傳輸承載的協(xié)作流程;圖12為本發(fā)明一具體實(shí)施例中TE發(fā)送測(cè)試消息的協(xié)作流程;圖13為本發(fā)明一具體實(shí)施例中TE接收測(cè)試消息/響應(yīng)的協(xié)作流程。具體實(shí)施例方式以下結(jié)合附圖對(duì)本發(fā)明的技術(shù)方案進(jìn)行詳細(xì)的描述。附圖1為本發(fā)明的系統(tǒng)邏輯結(jié)構(gòu)圖,測(cè)試消息適配體處于測(cè)試用例運(yùn)行體和被測(cè)應(yīng)用實(shí)體之間,用于提供與測(cè)試用例運(yùn)行體的接口TEI和面向被測(cè)應(yīng)用的接口TSI。釆用測(cè)試消息適配后,進(jìn)行測(cè)試用例開(kāi)發(fā)時(shí)將無(wú)須考慮測(cè)試用例運(yùn)行體和被測(cè)應(yīng)用所釆用的操作系統(tǒng)和通信協(xié)議,而主要集中考慮被測(cè)應(yīng)用應(yīng)提供的功能過(guò)程和消息內(nèi)容,以及測(cè)試用例的處理邏輯。TE與測(cè)試消息適配體以及其他測(cè)試環(huán)境組件一起組成測(cè)試系統(tǒng),實(shí)現(xiàn)對(duì)AUT的測(cè)試和其他輔助測(cè)試功能(如log/trace/testsuitehandler)。測(cè)試消息適配體支持由測(cè)試用例運(yùn)行體在測(cè)試啟動(dòng)時(shí)發(fā)起并建立與被測(cè)應(yīng)用之間的消息傳輸承載通道,為后續(xù)進(jìn)行測(cè)試消息的單向或雙向傳輸準(zhǔn)備通路,以及在測(cè)試用例結(jié)東前拆除該傳輸承載、釋放相應(yīng)的計(jì)算資源。實(shí)際計(jì)算環(huán)境下的消息承載方式可能有多種如Socket類、消息隊(duì)列MessageQueue類或共享內(nèi)存SharedMemoiy類等,但TEI接口將屏蔽這類差異,只提供標(biāo)準(zhǔn)的標(biāo)識(shí)。測(cè)試消息適配體還支持TE與AUT之間測(cè)試消息的相互轉(zhuǎn)發(fā),支持TE—側(cè)必要的消息表示格式與網(wǎng)絡(luò)傳輸格式的相互轉(zhuǎn)換,并在AUT—側(cè)提供AUT消息格式與測(cè)試消息適配體內(nèi)部消息格式的相互轉(zhuǎn)換。此處,所述消息表示格式是指計(jì)算機(jī)可識(shí)別的數(shù)據(jù)類型格式,所述網(wǎng)絡(luò)傳送格式是計(jì)算機(jī)可識(shí)別的數(shù)據(jù)在網(wǎng)絡(luò)中的傳輸格式。測(cè)試消息適配體對(duì)外提供的接口功能可簡(jiǎn)單歸納如下TEI::{消息承載建立;消息承載拆除、計(jì)算資源釋放;TE消息的本地表示格式向網(wǎng)絡(luò)傳輸格式轉(zhuǎn)換;TE到AUT消息轉(zhuǎn)發(fā);AUT消息的檢測(cè)/接收;AUT傳送過(guò)來(lái)的消息的網(wǎng)絡(luò)傳輸格式向TE本地表示格式的轉(zhuǎn)換;TSI::{消息承載建立;消息承載拆除、計(jì)算資源釋放;消息適配體內(nèi)數(shù)據(jù)包格式向AUT內(nèi)通信數(shù)據(jù)包格式的轉(zhuǎn)換;AUT到TE消息的轉(zhuǎn)發(fā);TE到AUT消息的轉(zhuǎn)發(fā)考慮從嵌入式應(yīng)用所支持協(xié)議/標(biāo)準(zhǔn)一致性驗(yàn)證到嵌入式應(yīng)用性能/容量/壓10力測(cè)試的需要,測(cè)試消息適配體必需支持分布試環(huán)境下測(cè)試AUT的要求,即必需能夠支持多個(gè)TE節(jié)點(diǎn)測(cè)試多個(gè)AUT節(jié)點(diǎn),這就要求,在測(cè)試消息適配體內(nèi)部應(yīng)當(dāng)具備相應(yīng)的消息路由能力,以支持容量/壓力測(cè)試對(duì)負(fù)載控制的要求。圖2為測(cè)試消息適配體的邏輯結(jié)構(gòu)圖,比照OSI模型,測(cè)試消息適配體可以覆蓋多個(gè)通信協(xié)議子層的職能,如網(wǎng)絡(luò)層、傳輸層和表示層等。其中TEI-Svr為測(cè)試用例運(yùn)行體接口服務(wù)單元,Msg-Disp代表TE與AUT之間測(cè)試消息轉(zhuǎn)發(fā)單元,TSI-Svr代表被測(cè)應(yīng)用接口服務(wù)單元。TEI-Svr可關(guān)聯(lián)一個(gè)或多個(gè)TE實(shí)例,TEI-Svr與Msg-Disp單元關(guān)聯(lián),Msg-Disp與基于負(fù)荷分配以及AUT接口分布設(shè)置的一個(gè)或多個(gè)TSI-Svr單元關(guān)聯(lián)。TEI-Svr用于將TE的消息格式轉(zhuǎn)換成測(cè)試消息適配體內(nèi)部消息格式并轉(zhuǎn)發(fā)給Msg-Disp,將Msg-Disp轉(zhuǎn)發(fā)過(guò)來(lái)的以測(cè)試消息適配體內(nèi)部消息格式表達(dá)的AUT消息轉(zhuǎn)換成TE的消息格式并轉(zhuǎn)發(fā)給TE,為了識(shí)別TE消息格式并執(zhí)行消息格式轉(zhuǎn)換,TEI-Svr還包含一個(gè)配置接口,用于讀取和解析包含TE消息格式描述信息的配置文件,TEI-Svr依據(jù)通過(guò)該配置接口獲取的TE消息格式描述信息進(jìn)行TE消息格式與測(cè)試消息適配體內(nèi)部消息格式之間的轉(zhuǎn)換。Msg-Disp負(fù)責(zé)TEI-Svr與TSI-Svr之間的內(nèi)部消息轉(zhuǎn)發(fā),在分布式環(huán)境中,Msg-Disp還需完成測(cè)試消息的路由功能,即可根據(jù)路由配置策略實(shí)現(xiàn)TEI-Svr與TSI-Sw之間的消息路由。TSI-Svr用于將AUT發(fā)送的AUT消息格式轉(zhuǎn)換成測(cè)試消息適配體內(nèi)部消息格式并轉(zhuǎn)發(fā)給Msg-Disp,以及將Msg-Disp轉(zhuǎn)發(fā)過(guò)來(lái)的以測(cè)試消息適配體內(nèi)部消息格式表達(dá)的TE消息轉(zhuǎn)換成AUT消息格式并轉(zhuǎn)發(fā)給AUT,為了識(shí)別AUT消息格式并執(zhí)行轉(zhuǎn)換,TSI-Svr還包含一個(gè)標(biāo)準(zhǔn)配置接口,用于讀取和解析包含AUT消息格式描述信息的配置文件,TSI-Sw依據(jù)通過(guò)該配置接口獲取的AUT消息格式的描述信息進(jìn)行AUT消息格式與測(cè)試消息適配體內(nèi)部消息格式之間的轉(zhuǎn)換。通常TE與TEI-Svr同處于一個(gè)節(jié)點(diǎn)上,邏輯上稱作測(cè)試節(jié)點(diǎn),AUT與TSI-Svr同處一個(gè)節(jié)點(diǎn),邏輯上稱作被測(cè)節(jié)點(diǎn),Msg-Disp邏輯上稱作轉(zhuǎn)發(fā)節(jié)點(diǎn)。根據(jù)測(cè)試目的,可按需布置測(cè)試消息適配體中各邏輯實(shí)體,例如在進(jìn)行嵌入式應(yīng)用接口一致性驗(yàn)證時(shí),可將一個(gè)測(cè)試節(jié)點(diǎn)和一個(gè)轉(zhuǎn)發(fā)節(jié)點(diǎn)布置到同一個(gè)物理節(jié)點(diǎn)上,將被測(cè)節(jié)點(diǎn)布置到另外一個(gè)節(jié)點(diǎn)上。而在進(jìn)行嵌入式應(yīng)用容量/壓力測(cè)試場(chǎng)景時(shí),測(cè)試環(huán)境配置多個(gè)包含TE和TEI-Svr的測(cè)試節(jié)點(diǎn)、多個(gè)包含Msg-Disp的轉(zhuǎn)發(fā)節(jié)點(diǎn)和一個(gè)/或多個(gè)包含AUT及TSI-Svr的被測(cè)節(jié)點(diǎn),如圖3所示,包括了2個(gè)測(cè)試節(jié)點(diǎn)、2個(gè)被測(cè)節(jié)點(diǎn)和3個(gè)轉(zhuǎn)發(fā)節(jié)點(diǎn),由測(cè)試節(jié)點(diǎn)1發(fā)送的測(cè)試消息可以通過(guò)轉(zhuǎn)發(fā)節(jié)點(diǎn)1和轉(zhuǎn)發(fā)節(jié)點(diǎn)3的路由路徑到達(dá)被測(cè)節(jié)點(diǎn)1,也可以通過(guò)轉(zhuǎn)發(fā)節(jié)點(diǎn)1、轉(zhuǎn)發(fā)節(jié)點(diǎn)2、轉(zhuǎn)發(fā)節(jié)點(diǎn)3的路由路徑到達(dá)被測(cè)節(jié)點(diǎn)1。由于本發(fā)明在設(shè)計(jì)上的靈活性,使用本發(fā)明的測(cè)試消息適配體的邏輯結(jié)構(gòu)可以布置出更為復(fù)雜的測(cè)試環(huán)境。測(cè)試消息適配體內(nèi)的邏輯實(shí)體之間,即測(cè)試用例運(yùn)行體接口服務(wù)單元與測(cè)試消息轉(zhuǎn)發(fā)單元之間、測(cè)試消息轉(zhuǎn)發(fā)單元與被測(cè)應(yīng)用接口服務(wù)單元之間、測(cè)試消息轉(zhuǎn)發(fā)單元與測(cè)試消息轉(zhuǎn)發(fā)單元之間的端到端消息釆用如下消息格式[router_id/cmd][datalenth][payload]router—id/cmd為消息類型標(biāo)識(shí)字段、datalenth為數(shù)據(jù)長(zhǎng)度字段,payload數(shù)據(jù)載荷字段。其中Router—id/Cmd部分表示消息的類型,在本發(fā)明一具體實(shí)施例中將消息類型分為實(shí)體間協(xié)作命令和TE/AUT數(shù)據(jù)承載命令兩種類型,實(shí)體間協(xié)作命令指添加/刪除路由、建立/拆除承載通道等命令,數(shù)據(jù)承載命令是指完成邏輯實(shí)體間測(cè)試消息傳輸?shù)拿睢榱藚^(qū)別兩種消息類型,本發(fā)明一具體實(shí)施例中設(shè)定一判斷值Cmd—highBut,當(dāng)Router—id/Cmd的值小于Cmd—highBut時(shí)表示該命令為實(shí)體間協(xié)作命令,其payload字段為命令參數(shù);否則為數(shù)據(jù)承載命令,其payload字段為承載的數(shù)據(jù)。Cmd取值包含以下命令含義Id—AddRouterEntryReq,添加路由實(shí)體請(qǐng)求標(biāo)識(shí);Id—AddRouterEntryRsp,添加路由實(shí)體請(qǐng)求響應(yīng)標(biāo)識(shí);Id—RemRouterEntryReq,刪除路由實(shí)體請(qǐng)求標(biāo)識(shí);Id—RemRouterEntryRsp,刪除路由實(shí)體請(qǐng)求響應(yīng)標(biāo)識(shí);Id—CrMsgBearerReq,創(chuàng)建消息承載請(qǐng)求標(biāo)識(shí);Id—CrMsgBearerRsp,創(chuàng)建消息承載請(qǐng)求響應(yīng)標(biāo)識(shí);Id_RmMsgBearerReq,刪除消息承載請(qǐng)求標(biāo)識(shí);Id_RmMsgBearerRsp,刪除消息承載響應(yīng)標(biāo)識(shí);為了區(qū)分同一承載通道上的不同方向的數(shù)據(jù),本發(fā)明一具體實(shí)施例中以大于Cmd—highBut的以2的正整數(shù)倍為分隔的一組奇偶數(shù)來(lái)做為所述類型標(biāo)識(shí)字段的值,用于區(qū)分和標(biāo)識(shí)同一承載通道上的同一條路由中不同方向的消息,例如當(dāng)router—id=2*n+Cmd—highBut+0時(shí),表示第router—id號(hào)路由承載的數(shù)據(jù)是由TE發(fā)往AUT;當(dāng)router—id=2*n+Cmd—+1時(shí),表示第router—id號(hào)路由承載的數(shù)據(jù)是由AUT發(fā)往TE;本發(fā)明一具體實(shí)施例中被測(cè)應(yīng)用接口服務(wù)單元與AUT間消息格式為[payload]其中autlnnr一header為被測(cè)軟件專用的消息頭。為了實(shí)現(xiàn)本發(fā)明所述的邏輯功能,本發(fā)明一具體實(shí)施例中各節(jié)點(diǎn),包括測(cè)試節(jié)點(diǎn)、轉(zhuǎn)發(fā)節(jié)點(diǎn)、被測(cè)節(jié)點(diǎn),都應(yīng)當(dāng)包括如下信息,類似于各實(shí)體類中的成員變量,但不限于下列信息要素1、MonitorPort,用于服務(wù)進(jìn)程監(jiān)視端口;2、路由表RouterTable{RouterEntryO,RouterEntryl,......},用于在本地存儲(chǔ)節(jié)點(diǎn)間路由;其中每個(gè)路由項(xiàng),如RouterEntryO,包含如下屬性(1)、router—id,路由編號(hào),用于標(biāo)識(shí)一條路由;(2)、DynBearerState,路由動(dòng)態(tài)承載狀態(tài),該狀態(tài)有四種類型,分別為[OffSrv]未使用、[InSet]承載建立中、[InSrv]正在使用、[InDisment]承載拆除中;(3)、prehop—type,前向節(jié)點(diǎn)類型,前向節(jié)點(diǎn)是指當(dāng)前節(jié)點(diǎn)在同一路由上的前一節(jié)點(diǎn),有三種取值,分別為[TENIROUIAUT],TEN代表測(cè)試節(jié)點(diǎn);ROU代表轉(zhuǎn)發(fā)節(jié)點(diǎn);AUT代表被測(cè)節(jié)點(diǎn)。(4)、phaddr一type,前向節(jié)點(diǎn)地址類型,有三種取值類型,分別為[socket—based|MagQueue—based|SharedMem—based],分別表示基于套接字類型、消息隊(duì)列類型、共享內(nèi)存類型的地址類型;(5)、prehop—addr,前向節(jié)點(diǎn)地址,用于標(biāo)識(shí)前向節(jié)點(diǎn)的地址;(6)、nexthop—type,后向節(jié)點(diǎn)類型,后向節(jié)點(diǎn)是指當(dāng)前節(jié)點(diǎn)在同一路由上的后一節(jié)點(diǎn),該類型有三種取值,[TEN|ROU|AUT],含義同(3)中描述;(7)、nhaddr—type,后向節(jié)點(diǎn)地址類型[socket—based|MagQueue—based|SharedMem—based];(8)、nexthop—addr,后向節(jié)點(diǎn)地址(9)、autlnnr—header,AUT專用消息頭,用于AUT消息的專用標(biāo)識(shí),當(dāng)后向節(jié)點(diǎn)為AUT時(shí)有效;(10)、autmsg—constractor,AUT消息構(gòu)造函數(shù),當(dāng)后向節(jié)點(diǎn)為AUT節(jié)點(diǎn)類型時(shí)有效,該函數(shù)用于根據(jù)配置接口導(dǎo)入的AUT消息格式描述信息實(shí)現(xiàn)測(cè)試消息適配體內(nèi)部消息格式到AUT消息格式轉(zhuǎn)換;(11)、autmsg—destractor,AUT消息解構(gòu)函數(shù),當(dāng)前向節(jié)點(diǎn)為AUT節(jié)點(diǎn)時(shí)有效;該函數(shù)用于根據(jù)配置接口導(dǎo)入的AUT消息格式描述信息實(shí)現(xiàn)AUT消息格式到測(cè)試消息適配體內(nèi)部消息格式的轉(zhuǎn)換;(12)、testmsg_packer,測(cè)試消息傳輸編碼函數(shù),當(dāng)前向節(jié)點(diǎn)為TEN節(jié)點(diǎn)類型時(shí)有效,該函數(shù)用于根據(jù)配置接口導(dǎo)入的TE消息格式描述信息實(shí)現(xiàn)TE消息格式到測(cè)試消息適配體內(nèi)部消息格式的轉(zhuǎn)換;(13)、testmsg一unpacker,測(cè)試消息傳輸解碼函數(shù),當(dāng)后向節(jié)點(diǎn)為TEN時(shí)有效,該函數(shù)用于根據(jù)配置接口導(dǎo)入的TE消息格式描述信息實(shí)現(xiàn)測(cè)試消息適配體內(nèi)部消息格式到TE消息格式轉(zhuǎn)換;3、承載快速索引表,BearerldxTable(BearerEntryO,BearerEntry1,......}其中每個(gè)快速索引項(xiàng)(如BearerEntryO)包含Bearerid/*承載標(biāo)識(shí)*/RT—OffSet/*對(duì)應(yīng)路由信息位置(在路由表中的偏移量)*/承載快速索引表用于各邏輯實(shí)體快速的獲取承載通道標(biāo)識(shí),以及快速的定位該承載通道所對(duì)應(yīng)的路由信息。本發(fā)明一具體實(shí)施例中所述邏輯實(shí)體對(duì)外主要管理類接口函數(shù)包括增加路由表項(xiàng)和刪除路由表項(xiàng)。增加路由表項(xiàng)處理函數(shù)的核心處理如圖5所示,流程如下步驟501:根據(jù)路由標(biāo)識(shí)構(gòu)成規(guī)則及路由策略判斷路由標(biāo)識(shí)是否有效,若有效則執(zhí)行步驟502,若否則結(jié)東;步驟502:在后向節(jié)點(diǎn)中增加對(duì)應(yīng)路由;此步驟將添加路由請(qǐng)求發(fā)布給其它后向節(jié)點(diǎn),并等待添加操作完成;步驟503:更新當(dāng)前節(jié)點(diǎn)路由項(xiàng)信息;步驟504:根據(jù)前向及后向節(jié)點(diǎn)的類型進(jìn)行消息格式轉(zhuǎn)換函數(shù)的注冊(cè);當(dāng)前向節(jié)點(diǎn)類型為TEN時(shí),注冊(cè)TE到測(cè)試消息適配體內(nèi)部消息格式的轉(zhuǎn)換函數(shù);當(dāng)后向節(jié)點(diǎn)類型為TEN時(shí),注冊(cè)測(cè)試消息適配體內(nèi)部消息格式到TE消息格式的轉(zhuǎn)換函數(shù);當(dāng)前向節(jié)點(diǎn)類型為AUT時(shí),注冊(cè)AUT消息格式到測(cè)試消息適配體內(nèi)部消息格式的轉(zhuǎn)換函數(shù);當(dāng)后向節(jié)點(diǎn)類型為AUT時(shí),注冊(cè)測(cè)試消息適配體內(nèi)部消息格式到AUT消息格式的轉(zhuǎn)換函數(shù);步驟505:向前向節(jié)點(diǎn)發(fā)送路由項(xiàng)增加完成響應(yīng)消息。以下給出上述步驟的示例代碼AddRouterEntery(){IsValid(Router一id){!IsComplete(AddRouterEntry(nextHop)){WaitNxtHEntryAddCompleteThisEntry.AddField(prehop—type,addr一type,prehop—addr,nexthop—type,next—type,nxxthop—addr)if(prehop—type——-TEN){ThisEntry.AddField.AddFiled(testmsg_packer)}If(nexthop—type==TEN){ThisEntry.AddField.AddFiled(testmsg一unpacker)}If(prehop—type==AUT){ThisEntry.AddFiled(autmsg—destractor)}If(nexthop—type==AUT){ThisEntry.AddFiled(autmsg—constractor)}SendRspTo(PreHop)ReturnOK;需要說(shuō)明的是,現(xiàn)有路由協(xié)議有很多種,本發(fā)明不限制所采用的建立路由的協(xié)議,建立各節(jié)點(diǎn)之間的路由關(guān)系是建立承載通道的基礎(chǔ),在建立各測(cè)試節(jié)點(diǎn)之間路由關(guān)系后才能進(jìn)行承載通道的建立步驟。刪除路由表項(xiàng)處理函數(shù)的核心處理流程如圖6所述步驟601:根據(jù)路由標(biāo)識(shí)構(gòu)成規(guī)則及路由策略判斷路由標(biāo)識(shí)是否有效,若有效則執(zhí)行步驟602,若否則結(jié)東;步驟602:在后向節(jié)點(diǎn)中刪除對(duì)應(yīng)路由,并等待后向節(jié)點(diǎn)執(zhí)行完刪除操作反饋完成響應(yīng)消息;步驟603:更新本節(jié)點(diǎn)路由項(xiàng)信息;步驟604:向前向節(jié)點(diǎn)發(fā)送路由項(xiàng)刪除完成響應(yīng)消息。以下給出上述步驟的示例代碼RemRouterEntery()IsValid(Router一id)(!IsComplete(RemRouterEntry(nextHop)){WaitNxtHEntryRemCompleteThisEntry.DeleteSendRspTo(PreHop)ReturnOK創(chuàng)建消息承載核心處理流程如圖7所示步驟701:判斷路由標(biāo)識(shí)是否有效,若有效則執(zhí)行步驟702,若否則結(jié)束;步驟702:判斷待創(chuàng)建的承載通道的狀態(tài)是否為未使用狀態(tài),若是則執(zhí)行步驟703;若否則結(jié)束;步驟703:向當(dāng)前節(jié)點(diǎn)的后向節(jié)點(diǎn)發(fā)送建立承載通道請(qǐng)求,等待后向節(jié)點(diǎn)反饋完成響應(yīng)消息后執(zhí)行步驟704;;步驟704:更新當(dāng)前節(jié)點(diǎn)所述承載通道狀態(tài)標(biāo)識(shí)為使用狀態(tài);步驟705:更新當(dāng)前節(jié)點(diǎn)承載快速索引表;步驟706:向當(dāng)前節(jié)點(diǎn)的前向節(jié)點(diǎn)發(fā)送完成響應(yīng)消息。以下給出上述步驟的示例代碼Cr—MsgBearer()(IsValid(Router一id)(IsNormalEntry(Router—id){!lsComplete(Cr—MsgBearer(nextHop)){WaitCrNxtHBearerCmpUpdate—DynBearerStateUpdate—BearerldxTableSendRspTo(PreHop);ReturnOK拆除消息承載的核心處理流程如圖8所示步驟801:判斷引用的路由標(biāo)識(shí)是否有效,若是則執(zhí)行步驟802,若否則結(jié)束流程;步驟802:判斷待拆除的承載通道狀態(tài)是否為正常使用狀態(tài);若是則執(zhí)行步驟803,若否則結(jié)東流程;步驟803:向后向節(jié)點(diǎn)發(fā)送拆除承載通道請(qǐng)求,并等待完成響應(yīng)消息;步驟804:更新承載狀態(tài)標(biāo)識(shí)為未使用狀態(tài);步驟805:更新承載快速索引表;步驟806:向前向節(jié)點(diǎn)發(fā)承載通道拆除完成響應(yīng)消息;RmMsgBearer(){IsValid(Router—id){IsInSvr(Router—id){!IsComplete(RmMsgBearer(nextHop)){WaitRmNxtHBearerCmpUpdate—DynBearerStateUpdate一BearerIdxTableSendRspTo(PreHop)ReturnOK邏輯實(shí)體對(duì)外主要數(shù)據(jù)服務(wù)類接口函數(shù)主要是頂層消息處理函數(shù),其流程如圖9所示步驟901:判斷引用的路由標(biāo)識(shí)是否有效,若是則執(zhí)行步驟902,若否則結(jié)東流程;步驟902:判斷消息類型標(biāo)識(shí)是否符合規(guī)則,若符合則執(zhí)行步驟903,若否則結(jié)東流程;步驟903:對(duì)消息類型標(biāo)識(shí)判斷,如果是實(shí)體間協(xié)作命令,則執(zhí)行步驟904;如果是TE/AUT數(shù)據(jù)承載命令,則執(zhí)行步驟905;步驟904:根據(jù)實(shí)體間協(xié)作命令標(biāo)識(shí)調(diào)用相應(yīng)的函數(shù)接口;實(shí)體間協(xié)作命令主要有增加路由項(xiàng)命令、刪除路由項(xiàng)命令、創(chuàng)建消息承載命令、刪除消息承載命令,以及相應(yīng)的命令完成后的響應(yīng)命令。步驟905:獲取后向節(jié)點(diǎn)地址,將數(shù)據(jù)轉(zhuǎn)發(fā)到下一節(jié)點(diǎn)。OnRecvMsg(){IsValid(Router—id){ContorlCmd(Router一id){If(Router—id=Id一AddRouterEntryReq)CallAddRouterEntryElseIf(Router—id=Id—AddRouterEntryRsp)SetNxtHEntryAddCompleteElseIf(Router—id==Id—RemRouterEntryReq)CallRemRouterEntryElseIf(Router—id==Id一RemRouterEntryRsp)SetNxtEntryRemCompleteElseIf(Router—id==Id—CrMsgBearerReq)CallCrMsgBearerElseIf(Router—id==Id—CrMsgBearerRsp)SetCrNxtHBearerCmpElseIf(Router—id==Id—RmMsgBearerReq)CallRmMsgBearerElseIf(Router—idId—RmMsgBearerRsp)SetRmNxtHBearerCmpElse{findNextHopAddrBy(Router一id)sendData(NextHop,userData)ReturnOK以下結(jié)合圖4對(duì)本發(fā)明所述方法進(jìn)行詳細(xì)描述步驟A、通過(guò)配置接口識(shí)別測(cè)試用例運(yùn)行體的消息格式,建立測(cè)試消息適配體與測(cè)試用例運(yùn)行體之間的消息接口;當(dāng)使用標(biāo)準(zhǔn)配置接口或編程實(shí)現(xiàn)等方式建立TE消息格式與測(cè)試消息適配體內(nèi)部消息格式之間的識(shí)別關(guān)系后,在后續(xù)釆用同樣的TE對(duì)其它被測(cè)應(yīng)用進(jìn)行測(cè)試時(shí),就不需要再次對(duì)TE與測(cè)試消息適配體之間的消息接口進(jìn)行再一次的定義,只需對(duì)AUT與被測(cè)應(yīng)用之間的消息接口進(jìn)行重新定義即可,從而提高了代碼的重用性,省去了通過(guò)配置接口識(shí)別TE消息格式,以及對(duì)測(cè)試消息適配體相關(guān)邏輯實(shí)體屬性參數(shù)進(jìn)行配置的搡作。步驟B、通過(guò)配置接口識(shí)別被測(cè)應(yīng)用的消息格式,建立測(cè)試消息適配體與被測(cè)應(yīng)用之間的消息接口;通過(guò)配置接口導(dǎo)入消息格式描述信息,識(shí)別測(cè)試用例運(yùn)行體及被測(cè)應(yīng)用的消息格式并配置測(cè)試消息適配體相關(guān)邏輯實(shí)體屬性參數(shù)后,即可開(kāi)始承載通道的建立步驟,應(yīng)當(dāng)說(shuō)明的是,在建立承載通道之前,還應(yīng)當(dāng)包括建立起節(jié)點(diǎn)間的路由關(guān)系的步驟,路由關(guān)系主要以各邏輯實(shí)體所包含的路由表來(lái)體現(xiàn);所述配置接口主要的功能是通過(guò)導(dǎo)入和解析消息格式描述文件,識(shí)別TE/AUT的消息格式,所述消息格式描述文件可以是標(biāo)準(zhǔn)的描述語(yǔ)言,例如可擴(kuò)展標(biāo)識(shí)語(yǔ)言(XML,extensibleMarkupLanguage),或自定義的配置文件等。TEI-Svr依據(jù)所述標(biāo)準(zhǔn)配置接口提供的TE消息格式描述信息執(zhí)行測(cè)試消息適配體內(nèi)部消息格式與TE消息格式之間的相互轉(zhuǎn)換。TSI-Svr依據(jù)所述標(biāo)準(zhǔn)配置接口提供的AUT消息格式信息執(zhí)行測(cè)試消息適配體內(nèi)部消息格式與AUT消息格式之間的相互轉(zhuǎn)換。此外,在執(zhí)行測(cè)試之前,還需要對(duì)測(cè)試消息適配體內(nèi)的邏輯實(shí)體的屬性參數(shù)進(jìn)行配置,例如對(duì)路由策略、地址類型、節(jié)點(diǎn)標(biāo)識(shí)、消息編解碼函數(shù)等屬性進(jìn)行設(shè)置。步驟C、通過(guò)所述測(cè)試消息適配體與建立所述測(cè)試用例運(yùn)行體與所述被測(cè)應(yīng)用之間的承載通道;建立所述測(cè)試用例運(yùn)行體與所述被測(cè)應(yīng)用之間的承載通道的過(guò)程如圖10所示,BearCr—Req表示建立承載通道的請(qǐng)求消息,BearCr—Rsp表示對(duì)建立承載通道的請(qǐng)求消息的響應(yīng)消息。具體步驟如下步驟C1、測(cè)試用例運(yùn)行體向所述測(cè)試用例運(yùn)行體接口服務(wù)單元發(fā)送建立承載請(qǐng)求;測(cè)試用例運(yùn)行體接口服務(wù)單元依據(jù)消息格式描述信息對(duì)所述建立承載請(qǐng)求進(jìn)行解析識(shí)別,若識(shí)別成功則建立或修訂動(dòng)態(tài)承載標(biāo)識(shí)和快速索引并將所述建立或拆除承載請(qǐng)求轉(zhuǎn)發(fā)給測(cè)試消息轉(zhuǎn)發(fā)單元;步驟C2、所述測(cè)試消息轉(zhuǎn)發(fā)單元將所述建立承載請(qǐng)求轉(zhuǎn)發(fā)給所述被測(cè)應(yīng)用接口服務(wù)單元;步驟C3、所述被測(cè)應(yīng)用接口服務(wù)單元依據(jù)標(biāo)準(zhǔn)配置接口的配置將所述建立承載請(qǐng)求轉(zhuǎn)換成所述被測(cè)應(yīng)用可以識(shí)別的消息格式并轉(zhuǎn)發(fā)給所述被測(cè)應(yīng)用;步驟C4、所述被測(cè)應(yīng)用接口服務(wù)單元向所述測(cè)試消息轉(zhuǎn)發(fā)單元反饋建立承載請(qǐng)求響應(yīng)消息,所述測(cè)試消息轉(zhuǎn)發(fā)單元將所述建立承載請(qǐng)求響應(yīng)消息轉(zhuǎn)發(fā)給所述測(cè)試用例運(yùn)行體接口服務(wù)單元;步驟C5、所述測(cè)試用例運(yùn)行體接口服務(wù)單元依據(jù)標(biāo)準(zhǔn)配置接口的配置將所述建立承載請(qǐng)求響應(yīng)消息轉(zhuǎn)換成所述測(cè)試用例運(yùn)行體能夠識(shí)別的消息格式并轉(zhuǎn)發(fā)給所述測(cè)試用例運(yùn)行體。步驟D、依測(cè)試用例邏輯對(duì)被測(cè)應(yīng)用進(jìn)行測(cè)試。在建立承載通道后,TE與AUT之間即可進(jìn)行測(cè)試消息的相互識(shí)別和轉(zhuǎn)發(fā),TE向AUT發(fā)送測(cè)試消息的流程如圖12所示,AUT向TE發(fā)送測(cè)試消息的流程如圖13所示。TE向AUT發(fā)送測(cè)試消息的流程如下步驟D1、TE發(fā)送測(cè)試消息給TEI-Svr,由TEI-Svr將測(cè)試消息格式轉(zhuǎn)換為測(cè)試消息適配體內(nèi)部消息格式后轉(zhuǎn)發(fā)給Msg-Disp,Msg-Disp再將測(cè)試消息轉(zhuǎn)發(fā)給TSI-Svr;步驟D2、TSI-Sw將所述測(cè)試消息由測(cè)試消息適配體內(nèi)部消息格式轉(zhuǎn)換為AUT的消息格式并轉(zhuǎn)發(fā)給AUT;測(cè)試消息由AUT到TE的傳送步驟與上述步驟相反,此處不在贅述。其中,MsgDat—Ind表示TE和AUT之間發(fā)送的消息數(shù)據(jù)。在完成測(cè)試后,還需要拆除所述測(cè)試用例運(yùn)行體與所述被測(cè)應(yīng)用之間的承載通道并釋放資源。拆除測(cè)試用例運(yùn)行體與被測(cè)應(yīng)用之間的承載通道的流程與建立承載通道的過(guò)程類似,如圖11所示,BearRm一Req表示拆除請(qǐng)求消息,BearRm一Rsp表示拆除請(qǐng)求的響應(yīng)消息。以上所述,僅為本發(fā)明的較佳實(shí)施例而已,并非用于限定本發(fā)明的保護(hù)范圍。20權(quán)利要求1、一種可重用測(cè)試消息適配方法,其特征在于,包括A、通過(guò)配置接口識(shí)別測(cè)試用例運(yùn)行體的消息格式,建立測(cè)試消息適配體與測(cè)試用例運(yùn)行體之間的消息接口;B、通過(guò)配置接口識(shí)別被測(cè)應(yīng)用的消息格式,建立測(cè)試消息適配體與被測(cè)應(yīng)用之間的消息接口;C、通過(guò)所述測(cè)試消息適配體建立所述測(cè)試用例運(yùn)行體與所述被測(cè)應(yīng)用之間的承載通道;D、依測(cè)試用例邏輯對(duì)被測(cè)應(yīng)用進(jìn)行測(cè)試。2、根據(jù)權(quán)利要求l所述的方法,其特征在于,步驟A中,由所述測(cè)試消息適配體中的測(cè)試用例運(yùn)行體接口服務(wù)單元導(dǎo)入所述測(cè)試用例運(yùn)行體的消息格式描述文件,經(jīng)解析后識(shí)別所述測(cè)試用例運(yùn)行體的消息格式;步驟B中,由所述測(cè)試消息適配體中的被測(cè)應(yīng)用接口服務(wù)單元導(dǎo)入所述被測(cè)應(yīng)用的消息格式描述文件,經(jīng)解析后識(shí)別所述被測(cè)應(yīng)用的消息格式。3、根據(jù)權(quán)利要求2所述的方法,其特征在于,由所述測(cè)試消息適配體中一個(gè)或多個(gè)測(cè)試用例運(yùn)行體接口服務(wù)單元提供所述測(cè)試消息適配體與測(cè)試用例運(yùn)行體之間的消息接口;由所述測(cè)試消息適配體中一個(gè)或多個(gè)被測(cè)應(yīng)用接口服務(wù)單元提供測(cè)試消息適配體與被測(cè)應(yīng)用之間的消息接口;所述測(cè)試用例運(yùn)行體接口服務(wù)單元與所述被測(cè)應(yīng)用接口服務(wù)單元之間通過(guò)一個(gè)或多個(gè)測(cè)試消息轉(zhuǎn)發(fā)單元實(shí)現(xiàn)測(cè)試消息的轉(zhuǎn)發(fā)。4、根據(jù)權(quán)利要求3所述的方法,其特征在于,由所述測(cè)試用例運(yùn)行體和測(cè)試用例運(yùn)行體接口服務(wù)單元構(gòu)成測(cè)試節(jié)點(diǎn),由測(cè)試消息轉(zhuǎn)發(fā)單元構(gòu)成轉(zhuǎn)發(fā)節(jié)點(diǎn),由被測(cè)應(yīng)用和被測(cè)應(yīng)用接口服務(wù)單元構(gòu)成被測(cè)節(jié)點(diǎn),步驟c中,在建立所述承載通道之前還包括建立所述測(cè)試節(jié)點(diǎn)、轉(zhuǎn)發(fā)節(jié)點(diǎn)及被測(cè)節(jié)點(diǎn)之間的路由關(guān)系的步驟。5、根據(jù)權(quán)利要求4所述的方法,其特征在于,所述承載通道的建立步驟為Cl、判斷待創(chuàng)建的承載通道的狀態(tài)是否為未使用狀態(tài),若是,則執(zhí)行步驟C2;C2、向當(dāng)前節(jié)點(diǎn)的后向節(jié)點(diǎn)發(fā)送建立承載通道請(qǐng)求,等待后向節(jié)點(diǎn)反饋完成響應(yīng)消息后執(zhí)行步驟C3;C3、更新當(dāng)前節(jié)點(diǎn)所述承載通道狀態(tài)標(biāo)識(shí)為使用狀態(tài);C4、更新當(dāng)前節(jié)點(diǎn)承載快速索引表;C5、向當(dāng)前節(jié)點(diǎn)的前向節(jié)點(diǎn)發(fā)送完成響應(yīng)消息。6、根據(jù)權(quán)利要求5所述的方法,其特征在于,步驟D中,測(cè)試消息由所述測(cè)試用例運(yùn)行體流向所述被測(cè)應(yīng)用的步驟如下DOl、所述測(cè)試用例運(yùn)行體發(fā)送的測(cè)試消息由所述測(cè)試用例運(yùn)行體接口服務(wù)單元轉(zhuǎn)換為測(cè)試消息適配體內(nèi)部消息格式后發(fā)送給所述測(cè)試消息轉(zhuǎn)發(fā)單元;D02、所述測(cè)試消息轉(zhuǎn)發(fā)單元將格式轉(zhuǎn)換后的測(cè)試消息轉(zhuǎn)發(fā)給所述被測(cè)應(yīng)用接口服務(wù)單元;D03、所述被測(cè)應(yīng)用接口服務(wù)單元將所述格式轉(zhuǎn)換后的測(cè)試消息轉(zhuǎn)換為所述被測(cè)應(yīng)用的消息格式后發(fā)送給所述被測(cè)應(yīng)用;測(cè)試消息由所述被測(cè)應(yīng)用流向所述測(cè)試用例運(yùn)行體的步驟如下Dll、所述被測(cè)應(yīng)用發(fā)送的測(cè)試消息通過(guò)被測(cè)應(yīng)用接口服務(wù)單元轉(zhuǎn)換為測(cè)試消息適配體內(nèi)部消息格式后發(fā)送給所述測(cè)試消息轉(zhuǎn)發(fā)單元;D12、所述測(cè)試消息轉(zhuǎn)發(fā)單元將格式轉(zhuǎn)換后的測(cè)試消息轉(zhuǎn)發(fā)給所述測(cè)試用例運(yùn)行體接口服務(wù)單元;D13、所述測(cè)試用例運(yùn)行體接口服務(wù)單元將所述格式轉(zhuǎn)換后的測(cè)試消息轉(zhuǎn)換成所述測(cè)試用例運(yùn)行體消息格式后發(fā)送給所述測(cè)試用例運(yùn)行體。7、根據(jù)權(quán)利要求6所述的方法,其特征在于,所述消息適配體內(nèi)部的邏輯實(shí)體間的消息通信格式由消息類型標(biāo)識(shí)字段、數(shù)據(jù)長(zhǎng)度字段及數(shù)據(jù)載荷字段組成,若所述消息類型標(biāo)識(shí)字段中的值小于設(shè)定的值時(shí)表示該消息中的數(shù)據(jù)載荷字段承載的是命令參數(shù),若所述消息類型標(biāo)識(shí)字段中的值不小于設(shè)定的值,則表示該消息中的數(shù)據(jù)載荷字段承載的是數(shù)據(jù)。8、根據(jù)權(quán)利要求7所述的方法,其特征在于,以大于所述設(shè)定值的以2的正整數(shù)倍為分隔的一組奇偶數(shù)來(lái)作為所述消息類型標(biāo)識(shí)字段的值,用于區(qū)分和標(biāo)識(shí)同一承載通道上的同一條路由中不同方向的消息。9、一種可重用測(cè)試消息適配系統(tǒng),包括測(cè)試用例運(yùn)行體,被測(cè)應(yīng)用,其特征在于,還包括用于為所述測(cè)試用例運(yùn)行體及被測(cè)應(yīng)用提供消息適配的測(cè)試消息適配體,所述測(cè)試消息適配體包括測(cè)試用例運(yùn)行體接口服務(wù)單元,用于提供所述測(cè)試用例運(yùn)行體與所述測(cè)試消息適配體之間的接口服務(wù);被測(cè)應(yīng)用接口服務(wù)單元,用于提供所述被測(cè)應(yīng)用與所述測(cè)試消息適配體之間的接口服務(wù);測(cè)試消息轉(zhuǎn)發(fā)單元,用于在所述測(cè)試用例運(yùn)行體接口服務(wù)單元與所述被測(cè)應(yīng)用接口服務(wù)單元之間進(jìn)行消息轉(zhuǎn)發(fā)。10、根據(jù)權(quán)利要求9所述的系統(tǒng),其特征在于,在進(jìn)行容量/壓力測(cè)試時(shí),所述測(cè)試消息適配體可同時(shí)連接多個(gè)測(cè)試用例運(yùn)行體和多個(gè)被測(cè)應(yīng)用,一個(gè)或多個(gè)測(cè)試用例運(yùn)行體可與一個(gè)或多個(gè)測(cè)試用例運(yùn)行體接口服務(wù)單元連接;一個(gè)或多個(gè)被測(cè)應(yīng)用可與一個(gè)或多個(gè)被測(cè)應(yīng)用接口服務(wù)單元連接;一個(gè)或多個(gè)測(cè)試用例運(yùn)行體接口服務(wù)單元可與一個(gè)或多個(gè)測(cè)試消息轉(zhuǎn)發(fā)單元連接,多個(gè)測(cè)試消息轉(zhuǎn)發(fā)單元之間可建立路由。11、根據(jù)權(quán)利要求io所述的系統(tǒng),其特征在于,所述測(cè)試用例運(yùn)行體接口服務(wù)單元包含一個(gè)用于導(dǎo)入和識(shí)別測(cè)試用例運(yùn)行體的消息格式的配置接口;被測(cè)應(yīng)用接口服務(wù)單元包含一個(gè)用于導(dǎo)入和識(shí)別被測(cè)應(yīng)用的消息格式的配置接口。全文摘要本發(fā)明涉及一種有關(guān)嵌入式系統(tǒng)的可重用測(cè)試消息適配方法及系統(tǒng),用于解決進(jìn)行嵌入式軟件測(cè)試時(shí),需要針對(duì)每種測(cè)試運(yùn)行體及被測(cè)應(yīng)用定義實(shí)現(xiàn)一種特定的測(cè)試消息適配體的技術(shù)缺陷,本發(fā)明以標(biāo)準(zhǔn)接口將測(cè)試運(yùn)行體通過(guò)測(cè)試消息適配體與被測(cè)應(yīng)用關(guān)聯(lián)起來(lái),通過(guò)標(biāo)準(zhǔn)方式描述被測(cè)應(yīng)用的消息格式,從而減少對(duì)測(cè)試消息適配層的重復(fù)定義,代碼重用率高、通用性強(qiáng),能方便地應(yīng)用于采用不同測(cè)試工具針對(duì)不同被測(cè)應(yīng)用的測(cè)試環(huán)境。文檔編號(hào)H04L12/26GK101621419SQ20081011602公開(kāi)日2010年1月6日申請(qǐng)日期2008年7月1日優(yōu)先權(quán)日2008年7月1日發(fā)明者張勵(lì)虎申請(qǐng)人:大唐移動(dòng)通信設(shè)備有限公司