欧美在线观看视频网站,亚洲熟妇色自偷自拍另类,啪啪伊人网,中文字幕第13亚洲另类,中文成人久久久久影院免费观看 ,精品人妻人人做人人爽,亚洲a视频

基于消息測(cè)試的消息收發(fā)控制裝置及其方法

文檔序號(hào):7597259閱讀:127來(lái)源:國(guó)知局
專(zhuān)利名稱(chēng):基于消息測(cè)試的消息收發(fā)控制裝置及其方法
技術(shù)領(lǐng)域
本發(fā)明涉及網(wǎng)絡(luò)通信技術(shù)領(lǐng)域,尤其涉及一種基于消息測(cè)試的消息收發(fā)控制裝置及其方法。
背景技術(shù)
在網(wǎng)絡(luò)通信領(lǐng)域中,經(jīng)常需要對(duì)通信網(wǎng)絡(luò)設(shè)備進(jìn)行測(cè)試,以便于根據(jù)測(cè)試結(jié)果對(duì)網(wǎng)絡(luò)設(shè)備進(jìn)行維護(hù)、維修管理。進(jìn)行測(cè)試的方式很多,其中一種是基于消息的測(cè)試方法,即根據(jù)網(wǎng)絡(luò)設(shè)備消息的收發(fā)狀況確定網(wǎng)絡(luò)設(shè)備的性能及故障原因、故障點(diǎn)等。
目前基于消息的測(cè)試方法大都是采用以下幾個(gè)步驟來(lái)實(shí)現(xiàn)(1)用ASN.1(抽象語(yǔ)法標(biāo)記1號(hào))語(yǔ)法來(lái)對(duì)消息結(jié)構(gòu)進(jìn)行描述;(2)將描述的消息結(jié)構(gòu)編輯成需要發(fā)送或接收的消息;(3)用TCL(工具命令語(yǔ)言)或其他語(yǔ)言編寫(xiě)腳本發(fā)送和接收消息;(4)編寫(xiě)通信驅(qū)動(dòng)程序?qū)CL腳本或其他腳本和被測(cè)對(duì)象連接,執(zhí)行測(cè)試。
在測(cè)試中TCL腳本需要對(duì)發(fā)送的每條消息進(jìn)行賦值,對(duì)每條接收的消息和期望值進(jìn)行比較,獲得測(cè)試結(jié)果。也就是說(shuō),在TCL腳本中,對(duì)每條消息發(fā)送成功失敗,接收成功失敗,執(zhí)行成功,執(zhí)行失敗都要進(jìn)行不同的處理,以實(shí)現(xiàn)相應(yīng)的測(cè)試功能。
現(xiàn)有的ITT(集成測(cè)試工具)集成了消息編輯,TCL腳本編輯,TCL腳本執(zhí)行的功能。同時(shí)在ITT中將消息收發(fā)等功能抽象成AW(命令字),即一條自定義的TCL命令方便用來(lái)進(jìn)行消息收發(fā)。
目前,在編寫(xiě)測(cè)試腳本時(shí),通常利用ITT提供的幾個(gè)命令在狀態(tài)機(jī)的管理下進(jìn)行消息收發(fā),對(duì)每條消息不同參數(shù)的收發(fā)都編寫(xiě)一遍發(fā)送接收控制命令,對(duì)每條消息的成功失敗都要編寫(xiě)邏輯腳本進(jìn)行不同的處理。
以下是典型的測(cè)試腳本方案(1)對(duì)需要發(fā)送消息進(jìn)行賦值Send msg1;如果發(fā)送失敗,則返回執(zhí)行失??;(2)對(duì)預(yù)期收到的消息進(jìn)行賦值Receive msg2;如果接收失敗或超時(shí),則返回執(zhí)行失??;(3)保存接收消息,并和預(yù)期的值進(jìn)行比較,如果錯(cuò)誤,則返回執(zhí)行失?。?4)取出接收消息的某個(gè)參數(shù)對(duì)下一條發(fā)送消息進(jìn)行賦值Sendmsg3;如果發(fā)送失敗,則返回執(zhí)行失?。?5)對(duì)預(yù)期收到的多條消息進(jìn)行賦值Receive msg4,Receive msg5,Receive msg6;判斷接收消息的順序是否正確,接收的內(nèi)容是否正確。在實(shí)際的應(yīng)用過(guò)程中,有些消息是收到表示執(zhí)行正確,有些消息是接收不到表示正確,當(dāng)消息數(shù)較多時(shí),這種邏輯處理會(huì)變得十分復(fù)雜。
從上述針對(duì)消息測(cè)試過(guò)程中的消息收發(fā)控制方案的描述可以看出,所述的消息收發(fā)控制方案存在以下的缺點(diǎn)所述的復(fù)雜的邏輯處理將導(dǎo)致對(duì)于多條消息發(fā)送控制編寫(xiě)腳本更為復(fù)雜,因而容易出錯(cuò),進(jìn)而導(dǎo)致測(cè)試結(jié)果的可靠性大大降低;對(duì)腳本進(jìn)行修改變得十分困難,即當(dāng)腳本中消息收發(fā)控制的處理過(guò)程需要調(diào)整時(shí),不便于修改已經(jīng)編寫(xiě)的腳本;無(wú)法對(duì)所述的腳本進(jìn)行拆分,如果需要執(zhí)行腳本的一部分,則需要重新編寫(xiě)相應(yīng)的腳本,而且,對(duì)諸如前面所述的要求接收不到消息表示成功的腳本還需要單獨(dú)編寫(xiě);當(dāng)接收多條消息時(shí),現(xiàn)有技術(shù)很難對(duì)各條消息接收順序進(jìn)行判斷控制;當(dāng)消息較多且不同的消息有不同的接收要求時(shí),腳本編寫(xiě)的工作量大且難以調(diào)試。

發(fā)明內(nèi)容
鑒于上述現(xiàn)有技術(shù)所存在的問(wèn)題,本發(fā)明的目的是提供一種基于消息測(cè)試的消息收發(fā)控制裝置及其方法,從而使得消息收發(fā)控制過(guò)程的調(diào)整靈活方便,且實(shí)現(xiàn)簡(jiǎn)單,不易出錯(cuò)。
本發(fā)明的目的是通過(guò)以下技術(shù)方案實(shí)現(xiàn)的本發(fā)明提供了一種基于消息測(cè)試的消息收發(fā)控制裝置,其結(jié)構(gòu)包括參數(shù)賦值模塊用于進(jìn)行消息參數(shù)和邏輯控制參數(shù)賦值,并將相應(yīng)的消息參數(shù)值和邏輯控制參數(shù)值發(fā)送給消息收發(fā)控制模塊;消息收發(fā)控制模塊根據(jù)參數(shù)賦值模塊發(fā)來(lái)的消息參數(shù)值和邏輯控制參數(shù)值控制消息值控制消息的收發(fā)處理。
本發(fā)明還提供了一種基于上述裝置的消息收發(fā)控制方法,包括A、確定需要的消息文件;B、通過(guò)參數(shù)賦值模塊設(shè)置消息參數(shù)和邏輯控制參數(shù)值;C、根據(jù)設(shè)置的消息參數(shù)和邏輯控制參數(shù)值調(diào)用消息收發(fā)控制模塊對(duì)所述的消息文件進(jìn)行收發(fā)處理。
所述的消息收發(fā)控制方法中步驟B所述的消息參數(shù)包括消息收發(fā)控制模塊的執(zhí)行次數(shù)和消息的數(shù)量;
步驟B所述的邏輯控制參數(shù)包括消息序號(hào)、消息發(fā)送接收標(biāo)志、消息參數(shù)的數(shù)量、消息的參數(shù)名和消息的參數(shù)值。
所述的方法中,對(duì)于所述的發(fā)送消息,所述的邏輯控制參數(shù)還包括是否要回填之前接收的消息的過(guò)程號(hào)參數(shù),多次測(cè)試中的每次測(cè)試是否改變消息參數(shù)標(biāo)志。
所述的方法中,對(duì)于所述的接收的消息,所述的邏輯控制參數(shù)還包括有無(wú)時(shí)間接收順序要求的參數(shù)、接收到該消息表示執(zhí)行成功還是失敗的標(biāo)志,接收消息超時(shí)時(shí)間值。
所述的步驟C包括調(diào)用消息收發(fā)控制模塊,并根據(jù)設(shè)置的消息收發(fā)控制模塊的執(zhí)行次數(shù)、消息序號(hào)和消息發(fā)送接收標(biāo)志進(jìn)行消息的收發(fā)控制處理。
所述的步驟C進(jìn)一步包括C1、判斷當(dāng)前執(zhí)行次數(shù)是否在符合設(shè)定的消息收發(fā)控制模塊的執(zhí)行次數(shù),如果是,則執(zhí)行步驟C2,否則,執(zhí)行步驟C4;C2、判斷當(dāng)前處理的消息序號(hào)是否超過(guò)設(shè)置的最大消息個(gè)數(shù),如果沒(méi)有超過(guò),則執(zhí)行步驟C3,否則,將執(zhí)行次數(shù)加一,執(zhí)行步驟C1;C3、根據(jù)當(dāng)前處理消息的消息發(fā)送接收標(biāo)志進(jìn)行消息的發(fā)送或接收處理,并將消息序號(hào)加一,執(zhí)行步驟C2;C4、設(shè)置執(zhí)行結(jié)果,本次調(diào)用消息收發(fā)控制模塊的處理過(guò)程結(jié)束。
所述的步驟C3進(jìn)一步包括C31、判斷當(dāng)前處理消息的消息發(fā)送接收標(biāo)志是否為發(fā)送,如果是,則執(zhí)行步驟C32,否則執(zhí)行步驟C33;C32、進(jìn)行消息發(fā)送處理,并判斷是否成功,如果成功,則將消息序號(hào)加一,執(zhí)行步驟C2,否則,執(zhí)行步驟C4;C33、進(jìn)行消息接收處理,并判斷是否成功,如果是,則將消息序號(hào)加一,執(zhí)行步驟C2,否則,執(zhí)行步驟C4。
步驟C32所述的進(jìn)行消息發(fā)送處理進(jìn)一步包括判斷該消息的多次測(cè)試中的每次測(cè)試是否改變消息參數(shù)是否為改變,如果是,則取本次測(cè)試中該消息的參數(shù)值對(duì)該消息進(jìn)行賦值,否則,取第一次的參數(shù)值對(duì)該消息進(jìn)行賦值。
步驟C32所述的進(jìn)行消息發(fā)送處理進(jìn)一步包括判斷是否要回填之前接收的消息的過(guò)程號(hào)參數(shù)是否為需要,如果是,則從相應(yīng)的接收消息參數(shù)中取出過(guò)程號(hào)參數(shù),并給發(fā)送消息賦值后,進(jìn)行消息的發(fā)送處理,否則,直接進(jìn)行消息的發(fā)送處理。
所述的步驟C33進(jìn)一步包括判斷多次測(cè)試中的每次接收消息的測(cè)試是否改變參數(shù)的標(biāo)志是否為改變,如果是,則取本次測(cè)試中該消息的參數(shù)值對(duì)該消息進(jìn)行賦值,否則,取第一次的參數(shù)值對(duì)該消息進(jìn)行賦值。
所述的步驟C33進(jìn)一步包括C331、判斷是否已經(jīng)接收到所有消息或接收消息超時(shí),如果是,則執(zhí)行步驟C332,否則,繼續(xù)接收消息;C332、如果已經(jīng)收到所有消息,則直接執(zhí)行步驟C333,如果接收消息超時(shí),則將未收到的消息標(biāo)記為未收到該消息,執(zhí)行步驟C333;C333、將每條消息的測(cè)試結(jié)果和預(yù)期的結(jié)果進(jìn)行比較,判斷是否一致,如果是,則消息接收成功,否則,本次消息接收未成功。
所述的步驟C33進(jìn)一步包括接收消息,并將當(dāng)前的消息序號(hào)加一;根據(jù)接收消息序號(hào)判斷當(dāng)前處理的消息是否超過(guò)所述的需要接收的消息數(shù)量,如果是,則將接收的消息保存,對(duì)接收的消息設(shè)置已接收標(biāo)志,否則,繼續(xù)進(jìn)行消息的接收處理。
由上述本發(fā)明提供的技術(shù)方案可以看出,本發(fā)明所述的裝置及其方法具有以下優(yōu)點(diǎn)
采用消息參數(shù)及邏輯控制參數(shù)和控制邏輯控制處理腳本(即消息收發(fā)控制模塊)分離的方式,既便于腳本編寫(xiě),又不容易出錯(cuò),從而使得測(cè)試結(jié)果的可靠性大大提高;當(dāng)所述的腳本完成后,只需要修改執(zhí)行次數(shù)范圍的值就可以隨意選擇想具體執(zhí)行所采用的消息參數(shù)和邏輯控制參數(shù),即當(dāng)腳本中消息收發(fā)控制的處理過(guò)程需要調(diào)整時(shí),不再需要修改已經(jīng)編寫(xiě)的腳本;維護(hù)方便,如果要增加消息只需要簡(jiǎn)單的增加消息名和相關(guān)參數(shù),不需要修改已經(jīng)編寫(xiě)的腳本;簡(jiǎn)化對(duì)接收消息時(shí)各種情況的處理過(guò)程,有效地避免了因消息數(shù)增加導(dǎo)致腳本復(fù)雜度的增加的問(wèn)題;方便調(diào)試,出了問(wèn)題只要檢查消息參數(shù)就可以了,而不用關(guān)心邏輯控制處理腳本是否正確。


圖1為本發(fā)明所述的裝置的結(jié)構(gòu)示意圖;圖2為本發(fā)明所述的方法的主要流程圖;圖3為本發(fā)明所述的方法中消息控制收發(fā)處理的流程圖;圖4為本發(fā)明所述方法中發(fā)送消息的流程圖;圖5為本發(fā)明所述方法中接收消息的流程圖。
具體實(shí)施例方式
本發(fā)明主要包括兩部分,一部分負(fù)責(zé)給消息參數(shù)和邏輯控制參數(shù)賦值,另一部分是收發(fā)邏輯控制部分(即消息收發(fā)控制模塊),其中第二部分是本發(fā)明的核心部分,不需要修改。即本發(fā)明的核心是將復(fù)雜的消息收發(fā)和結(jié)果判斷邏輯封裝成一個(gè)腳本文件,然后,利用簡(jiǎn)單的消息參數(shù)和邏輯控制參數(shù)來(lái)控制腳本文件具體的收發(fā)判斷邏輯處理過(guò)程,從而使得消息收發(fā)的控制處理更為靈活、方便。也就是說(shuō),本發(fā)明中,如果希望改變消息收發(fā)控制處理過(guò)程或需要對(duì)新的消息進(jìn)行收發(fā)控制處理,無(wú)需對(duì)消息收發(fā)控制模塊進(jìn)行修改,而只需要修改相應(yīng)的消息參數(shù)和邏輯控制參數(shù)即可。
本發(fā)明提供了一種基于消息測(cè)試的消息收發(fā)控制裝置,在該裝置中,將參數(shù)信息的獲取從消息收發(fā)的控制處理腳本中分離出來(lái),如圖1所示,具體包括參數(shù)賦值模塊和消息收發(fā)控制模塊兩部分,分別敘述如下參數(shù)賦值模塊用于獲取設(shè)置的測(cè)試需要的消息參數(shù)和邏輯控制參數(shù),并對(duì)其進(jìn)行賦值處理,然后將相應(yīng)的消息參數(shù)值和邏輯控制參數(shù)值發(fā)送給消息收發(fā)控制模塊;消息收發(fā)控制模塊根據(jù)參數(shù)賦值模塊發(fā)來(lái)的消息參數(shù)值和邏輯控制參數(shù)值控制消息的收發(fā)處理,此處所述的消息收發(fā)處理均為根據(jù)設(shè)置的消息參數(shù)和邏輯參數(shù)值進(jìn)行,因此,可以通過(guò)消息參數(shù)值和邏輯控制參數(shù)的靈活設(shè)置實(shí)現(xiàn)需要的相應(yīng)的消息收發(fā)控制處理過(guò)程。
基于上述裝置,本發(fā)明還提供了一種消息收發(fā)控制方法,該方法的主要處理流程如圖2所示,具體包括以下步驟步驟21確定需要的消息文件;確定消息收發(fā)控制模塊運(yùn)行需要的消息文件,例如loadmsg-msgfile MSG0 $msgdir\\USER_ACCESS_ALLOWED_IND.msg;loadmsg-msgfile MSG1 $msgdir\\RM_USER_ACCESS_ALLOWED_IND.msg。
步驟22通過(guò)參數(shù)賦值模塊設(shè)置消息參數(shù)和邏輯控制參數(shù)值;所述的消息參數(shù)包括消息收發(fā)控制模塊的執(zhí)行次數(shù)和消息的數(shù)量;所述的消息收發(fā)控制模塊的執(zhí)行次數(shù),用于控制所述消息收發(fā)控制模塊的執(zhí)行次數(shù),且每次都會(huì)根據(jù)設(shè)置情況執(zhí)行相應(yīng)的消息順序和個(gè)數(shù),即可控制每次消息收發(fā)控制模塊執(zhí)行的消息參數(shù),因而可方便用于對(duì)同樣流程不同參數(shù)進(jìn)行參數(shù)遍歷的測(cè)試,例如
測(cè)試次數(shù)為endid-beginid+1,這樣,便可通過(guò)修改beginid和endid值來(lái)任意控制希望執(zhí)行第幾次的參數(shù)(包括消息參數(shù)和邏輯控制參數(shù)),以測(cè)試兩次為例set begini d1/設(shè)置beginid為1;set endid 2/設(shè)置endid為2;同時(shí),該步驟還需要設(shè)置使用的消息個(gè)數(shù)set msgnum2;所述的邏輯控制參數(shù)包括消息序號(hào)、消息發(fā)送接收標(biāo)志、消息的參數(shù)名、消息參數(shù)的數(shù)量,消息的參數(shù)值;還可選地包括是否要回填之前接收的消息的過(guò)程號(hào)參數(shù),多次測(cè)試中的每次測(cè)試是否改變消息參數(shù)標(biāo)志、有無(wú)時(shí)間接收順序要求參數(shù)、設(shè)置收到該消息表示正確與否的標(biāo)志,接收消息超時(shí)時(shí)間值等等;所述的邏輯控制參數(shù)以分為發(fā)送消息的邏輯控制參數(shù)和接收消息的邏輯控制參數(shù),其中每條發(fā)送消息包括以下邏輯控制參數(shù)消息序號(hào),表示是第幾條執(zhí)行的消息set msgno 0;消息發(fā)送接收標(biāo)志,0表示發(fā)送,非0表示接收set msgflag$msgno 0;設(shè)置該發(fā)送消息是否要要回填之前接收消息的過(guò)程號(hào)參數(shù),參數(shù)為1表示回填,為0表示不回填set dwtranidflag$msgno 0;在執(zhí)行多次測(cè)試時(shí)每次測(cè)試時(shí)該消息的參數(shù)是否改變,;0改變,非0不變set bchange$msgno 0;設(shè)置該消息的參數(shù)個(gè)數(shù)set varnum$msgno 3;設(shè)置參數(shù)名set${msgno}varname0″dwTransactionID″set${msgno}varname1″bBoardID″set${msgno}varname2″bFlag″設(shè)置參數(shù)值
seti1,由于bchange$msgno參數(shù)為0,所以這里只要設(shè)置一次參數(shù)值,每次測(cè)試都會(huì)加載相同的參數(shù)值set${msgno}${i}var0 0set${msgno}${i}var1 2set${msgno}${i}var2 0每條接收消息的邏輯控制參數(shù)包括設(shè)置消息序號(hào)set msgno 1;設(shè)置消息發(fā)送接收標(biāo)志,0表示發(fā)送,非0表示接收setmsgflag$msgno 1;設(shè)置無(wú)接收時(shí)間順序要求的消息數(shù),表示有多少條消息要不分時(shí)間順序的接收,如果有時(shí)間順序的,這里填1,如果有3條消息,這里填3,那后兩條消息該參數(shù)無(wú)效set asynum$msgno 1;設(shè)置對(duì)于該消息的用例執(zhí)行正確標(biāo)志0接收到該消息表示正確,非0接收不到該消息表示正確,這個(gè)參數(shù)是用例執(zhí)行成功還是失敗的判斷標(biāo)志set okflag$msgno 0;響應(yīng)消息超時(shí)時(shí)間,表示在該超時(shí)時(shí)間內(nèi)判斷是否收到該消息,單位msset msgtimeout$msgno 6000;在執(zhí)行多次測(cè)試時(shí)每次測(cè)試時(shí)該消息的參數(shù)是否改變,;0改變,非0不變set bchange$msgno 0;參數(shù)個(gè)數(shù)set varnum$msgno 2;參數(shù)名set${msgno}varname0″dwTransactionID″set${msgno}varname1″bStatus″設(shè)置參數(shù)值seti1表示第一次執(zhí)行時(shí)加載的參數(shù);set${msgno}${i}var0 0;
set${msgno}${i}var1 1;設(shè)置參數(shù)值seti2表示第二次執(zhí)行時(shí)加載的參數(shù);set${msgno}${i}var0 0;set${msgno}${i}var1 2;每次參數(shù)加載包括根據(jù)參數(shù)名進(jìn)行參數(shù)值的加載處理;步驟23調(diào)用消息收發(fā)控制模塊,并根據(jù)設(shè)置的消息收發(fā)控制模塊的執(zhí)行次數(shù)、消息序號(hào)和消息發(fā)送接收標(biāo)志進(jìn)行消息的收發(fā)控制處理;開(kāi)始執(zhí)行消息收發(fā)控制模塊source$itdir/script/common/nsendnrec.tcl;針對(duì)每個(gè)測(cè)試腳本都是如上面所示只要設(shè)置前三步的一些參數(shù),不需要編寫(xiě)任何邏輯控制語(yǔ)言,僅需要在步驟23調(diào)用nsendnrec.tcl(消息收發(fā)控制模塊)來(lái)執(zhí)行相應(yīng)的實(shí)例即可,所述的nsendnrec.tcl該文件是不需要改變的。
本發(fā)明中所術(shù)的消息收發(fā)控制模塊的具體處理流程如圖3所示,具體包括以下步驟步驟31判斷當(dāng)前執(zhí)行次數(shù)是否在符合設(shè)定的次數(shù)要求,如果是,則執(zhí)行步驟32,否則,執(zhí)行步驟38;也就是判斷當(dāng)前的執(zhí)行次數(shù)是否在前面設(shè)置的參數(shù)beginid和endid值之間,如果是,則認(rèn)為當(dāng)前執(zhí)行次數(shù)符合設(shè)定的次數(shù)要求,否則,認(rèn)為不符合設(shè)定的次數(shù)要求;步驟32判斷當(dāng)前處理消息的消息序號(hào)是否超過(guò)設(shè)定的最大消息數(shù),如果沒(méi)有超過(guò),則執(zhí)行步驟33,否則,執(zhí)行步驟37;由于前面設(shè)置了消息收發(fā)控制模塊執(zhí)行一次需要處理的消息數(shù)量,即消息序號(hào),因此,該步驟是根據(jù)當(dāng)前處理消息的消息序號(hào)是否小于設(shè)定的需要執(zhí)行的消息序號(hào)判斷當(dāng)前處理消息的消息序號(hào)是否為設(shè)定的消息序號(hào),如果小于,則確定當(dāng)前處理消息的消息序號(hào)為設(shè)定的消息序號(hào),否則,確定所述的消息序號(hào)不是設(shè)定的消息序號(hào);步驟33判斷當(dāng)前處理消息的消息發(fā)送接收標(biāo)志是否為發(fā)送,如果是,則執(zhí)行步驟34,否則執(zhí)行步驟35;前面已經(jīng)設(shè)置了對(duì)于一個(gè)消息的消息發(fā)送接收標(biāo)志,因此,在進(jìn)行消息發(fā)送處理時(shí),需要根據(jù)所述的標(biāo)志進(jìn)行消息的發(fā)送處理;步驟34對(duì)于發(fā)送接收標(biāo)志為發(fā)送的消息進(jìn)行發(fā)送處理,并判斷是否成功,如果成功,則執(zhí)行步驟36,否則,執(zhí)行步驟39;步驟35進(jìn)行消息接收處理,并判斷是否成功,如果是,則執(zhí)行步驟36,否則,執(zhí)行步驟39;步驟36將消息序號(hào)加一,并執(zhí)行步驟32;將消息序號(hào)加一,以便于對(duì)本次執(zhí)行處理中的下一條消息進(jìn)行發(fā)送、接收處理,如此循環(huán)直到本次執(zhí)行過(guò)程結(jié)束;步驟37將執(zhí)行次數(shù)加一,并執(zhí)行步驟31;該步驟的處理是為了進(jìn)行下一次的執(zhí)行處理,如此循環(huán)直到設(shè)定的執(zhí)行次數(shù)均已執(zhí)行完成為止;步驟38設(shè)置執(zhí)行結(jié)果為成功,根據(jù)消息的發(fā)送、接收處理情況獲得執(zhí)行結(jié)果,至此,本次調(diào)用消息收發(fā)控制模塊的測(cè)試處理過(guò)程結(jié)束。
步驟39設(shè)置執(zhí)行結(jié)果為失敗,本次調(diào)用消息收發(fā)控制模塊的測(cè)試處理過(guò)程結(jié)束。
本發(fā)明中,步驟34所述的進(jìn)行消息發(fā)送處理的過(guò)程如圖4所示,進(jìn)一步包括以下步驟步驟41判斷該消息的多次測(cè)試中的每次測(cè)試是否改變參數(shù)的標(biāo)志是否設(shè)置為改變,如果是,則執(zhí)行步驟42,否則,執(zhí)行步驟43;
這是因?yàn)?,在進(jìn)行參數(shù)賦值時(shí),根據(jù)實(shí)際情況的需要,在新的一次消息收發(fā)控制模塊的執(zhí)行操作過(guò)程中可能需要改變執(zhí)行的參數(shù),包括消息參數(shù)和邏輯參數(shù),如果需要,則在設(shè)置所述的是否改變參數(shù)的標(biāo)志為改變,以便于進(jìn)行消息參數(shù)和邏輯控制參數(shù)的調(diào)整后再進(jìn)行消息的發(fā)送、接收處理;步驟42取本次測(cè)試中該消息的參數(shù)值對(duì)該消息進(jìn)行賦值,并執(zhí)行步驟44;即采用新的消息參數(shù)和邏輯控制參數(shù)對(duì)執(zhí)行的消息進(jìn)行賦值;步驟43由于設(shè)定無(wú)需對(duì)參數(shù)進(jìn)行改變,因此,只需取第一次的參數(shù)值對(duì)該消息進(jìn)行賦值即可,并執(zhí)行步驟44;步驟44判斷是否要回填之前接收的消息的過(guò)程號(hào)參數(shù)是否為需要,如果是,則執(zhí)行步驟45,否則,執(zhí)行步驟46;步驟45從相應(yīng)的接收消息參數(shù)中取出過(guò)程號(hào),并給發(fā)送消息賦值后,執(zhí)行步驟46;步驟46進(jìn)行消息的發(fā)送處理。
本發(fā)明中,所述的步驟35的處理過(guò)程如圖5所示,具體包括以下步驟步驟501獲取需要接收的消息數(shù)量,并初始化接收消息序號(hào);步驟502判斷當(dāng)前處理的消息是否超過(guò)所述的需要接收的消息數(shù)量,所述的需要接收的消息數(shù)量是在參數(shù)賦值是設(shè)定的,如果是,則執(zhí)行步驟507,否則,執(zhí)行步驟503;步驟503判斷該消息的多次測(cè)試中的每次測(cè)試是否改變參數(shù)標(biāo)志是否設(shè)置為改變,如果是,則執(zhí)行步驟504,否則,執(zhí)行步驟505;通過(guò)該步驟,可以根據(jù)實(shí)際情況的需要靈活地設(shè)置相應(yīng)的參數(shù),從而實(shí)現(xiàn)對(duì)相應(yīng)的消息可以基于不同的參數(shù)、不同的消息收發(fā)控制處理過(guò)程進(jìn)行收發(fā)控制處理;步驟504取本次測(cè)試中該消息的參數(shù)值(包括消息參數(shù)和邏輯控制參數(shù))對(duì)該消息進(jìn)行賦值,并執(zhí)行步驟506;
通過(guò)該步驟可以靈活地進(jìn)行消息收發(fā)控制處理過(guò)程的調(diào)整,而無(wú)需對(duì)已經(jīng)編寫(xiě)完成的消息收發(fā)控制模塊的腳本進(jìn)行修改;步驟505確定本次測(cè)試執(zhí)行操作無(wú)需修改相應(yīng)的參數(shù),則取第一次的參數(shù)值對(duì)該消息進(jìn)行賦值即可,并執(zhí)行步驟506;步驟506將當(dāng)前處理的接收消息的消息序號(hào)加一,并執(zhí)行步驟502;步驟507接收消息并保存,對(duì)接收的消息設(shè)置已接收標(biāo)志,表示該消息已經(jīng)接收;步驟508判斷是否接收到所有消息或接收消息超時(shí),如果是,則執(zhí)行步驟509,否則執(zhí)行步驟507;步驟509如果超過(guò)了設(shè)定的接收消息的時(shí)間或已經(jīng)收到所有消息,則不再接收消息,如果存在未收到的消息,還需要將未收到的消息標(biāo)記為未收到該消息,并執(zhí)行步驟510;步驟510將每條消息的測(cè)試結(jié)果和預(yù)期的結(jié)果進(jìn)行比較,判斷是否一致,如果是,則消息接收成功,執(zhí)行步驟36,否則,本次消息接收未成功,并執(zhí)行步驟39。
以上所述,僅為本發(fā)明較佳的具體實(shí)施方式
,但本發(fā)明的保護(hù)范圍并不局限于此,任何熟悉本技術(shù)領(lǐng)域的技術(shù)人員在本發(fā)明揭露的技術(shù)范圍內(nèi),可輕易想到的變化或替換,都應(yīng)涵蓋在本發(fā)明的保護(hù)范圍之內(nèi)。因此,本發(fā)明的保護(hù)范圍應(yīng)該以權(quán)利要求書(shū)的保護(hù)范圍為準(zhǔn)。
權(quán)利要求
1.一種基于消息測(cè)試的消息收發(fā)控制裝置,其特征在于,包括參數(shù)賦值模塊用于進(jìn)行消息參數(shù)和邏輯控制參數(shù)賦值,并將相應(yīng)的消息參數(shù)值和邏輯控制參數(shù)值發(fā)送給消息收發(fā)控制模塊;消息收發(fā)控制模塊根據(jù)參數(shù)賦值模塊發(fā)來(lái)的消息參數(shù)值和邏輯控制參數(shù)值控制消息值控制消息的收發(fā)處理。
2.一種基于上述裝置的消息收發(fā)控制方法,其特征在于,包括A、確定需要的消息文件;B、通過(guò)參數(shù)賦值模塊設(shè)置消息參數(shù)和邏輯控制參數(shù)值;C、根據(jù)設(shè)置的消息參數(shù)和邏輯控制參數(shù)值調(diào)用消息收發(fā)控制模塊對(duì)所述的消息文件進(jìn)行收發(fā)處理。
3.根據(jù)權(quán)利要求2所述的消息收發(fā)控制方法,其特征在于步驟B所述的消息參數(shù)包括消息收發(fā)控制模塊的執(zhí)行次數(shù)和消息的數(shù)量;步驟B所述的邏輯控制參數(shù)包括消息序號(hào)、消息發(fā)送接收標(biāo)志、消息參數(shù)的數(shù)量、消息的參數(shù)名和消息的參數(shù)值。
4.根據(jù)權(quán)利要求3所述的消息收發(fā)控制方法,其特征在于,對(duì)于所述的發(fā)送消息,所述的邏輯控制參數(shù)還包括是否要回填之前接收的消息的過(guò)程號(hào)參數(shù),多次測(cè)試中的每次測(cè)試是否改變消息參數(shù)標(biāo)志。
5.根據(jù)權(quán)利要求4所述的消息收發(fā)控制方法,其特征在于,對(duì)于所述的接收的消息,所述的邏輯控制參數(shù)還包括有無(wú)時(shí)間接收順序要求的參數(shù)、接收到該消息表示執(zhí)行成功還是失敗的標(biāo)志,接收消息超時(shí)時(shí)間值。
6.根據(jù)權(quán)利要求2、3、4或5所述的消息收發(fā)控制方法,其特征在于,所述的步驟C包括調(diào)用消息收發(fā)控制模塊,并根據(jù)設(shè)置的消息收發(fā)控制模塊的執(zhí)行次數(shù)、消息序號(hào)和消息發(fā)送接收標(biāo)志進(jìn)行消息的收發(fā)控制處理。
7.根據(jù)權(quán)利要求6所述的消息收發(fā)控制方法,其特征在于,所述的步驟C進(jìn)一步包括C1、判斷當(dāng)前執(zhí)行次數(shù)是否在符合設(shè)定的消息收發(fā)控制模塊的執(zhí)行次數(shù),如果是,則執(zhí)行步驟C2,否則,執(zhí)行步驟C4;C2、判斷當(dāng)前處理的消息序號(hào)是否超過(guò)設(shè)置的最大消息個(gè)數(shù),如果沒(méi)有超過(guò),則執(zhí)行步驟C3,否則,將執(zhí)行次數(shù)加一,執(zhí)行步驟C1;C3、根據(jù)當(dāng)前處理消息的消息發(fā)送接收標(biāo)志進(jìn)行消息的發(fā)送或接收處理,并將消息序號(hào)加一,執(zhí)行步驟C2;C4、設(shè)置執(zhí)行結(jié)果,本次調(diào)用消息收發(fā)控制模塊的處理過(guò)程結(jié)束。
8.根據(jù)權(quán)利要求7所述的消息收發(fā)控制方法,其特征在于,所述的步驟C3進(jìn)一步包括C31、判斷當(dāng)前處理消息的消息發(fā)送接收標(biāo)志是否為發(fā)送,如果是,則執(zhí)行步驟C32,否則執(zhí)行步驟C33;C32、進(jìn)行消息發(fā)送處理,并判斷是否成功,如果成功,則將消息序號(hào)加一,執(zhí)行步驟C2,否則,執(zhí)行步驟C4;C33、進(jìn)行消息接收處理,并判斷是否成功,如果是,則將消息序號(hào)加一,執(zhí)行步驟C2,否則,執(zhí)行步驟C4。
9.根據(jù)權(quán)利要求8所述的消息收發(fā)控制方法,其特征在于,步驟C32所述的進(jìn)行消息發(fā)送處理進(jìn)一步包括判斷該消息的多次測(cè)試中的每次測(cè)試是否改變消息參數(shù)是否為改變,如果是,則取本次測(cè)試中該消息的參數(shù)值對(duì)該消息進(jìn)行賦值,否則,取第一次的參數(shù)值對(duì)該消息進(jìn)行賦值。
10.根據(jù)權(quán)利要求8所述的消息收發(fā)控制方法,其特征在于,步驟C32所述的進(jìn)行消息發(fā)送處理進(jìn)一步包括判斷是否要回填之前接收的消息的過(guò)程號(hào)參數(shù)是否為需要,如果是,則從相應(yīng)的接收消息參數(shù)中取出過(guò)程號(hào)參數(shù),并給發(fā)送消息賦值后,進(jìn)行消息的發(fā)送處理,否則,直接進(jìn)行消息的發(fā)送處理。
11.根據(jù)權(quán)利要求8所述的消息收發(fā)控制方法,其特征在于,所述的步驟C33進(jìn)一步包括判斷多次測(cè)試中的每次接收消息的測(cè)試是否改變參數(shù)的標(biāo)志是否為改變,如果是,則取本次測(cè)試中該消息的參數(shù)值對(duì)該消息進(jìn)行賦值,否則,取第一次的參數(shù)值對(duì)該消息進(jìn)行賦值。
12.根據(jù)權(quán)利要求8所述的消息收發(fā)控制方法,其特征在于,所述的步驟C33進(jìn)一步包括C331、判斷是否已經(jīng)接收到所有消息或接收消息超時(shí),如果是,則執(zhí)行步驟C332,否則,繼續(xù)接收消息;C332、如果已經(jīng)收到所有消息,則直接執(zhí)行步驟C333,如果接收消息超時(shí),則將未收到的消息標(biāo)記為未收到該消息,執(zhí)行步驟C333;C333、將每條消息的測(cè)試結(jié)果和預(yù)期的結(jié)果進(jìn)行比較,判斷是否一致,如果是,則消息接收成功,否則,本次消息接收未成功。
13.根據(jù)權(quán)利要求8所述的消息收發(fā)控制方法,其特征在于,所述的步驟C33進(jìn)一步包括接收消息,并將當(dāng)前的消息序號(hào)加一;根據(jù)接收消息序號(hào)判斷當(dāng)前處理的消息是否超過(guò)所述的需要接收的消息數(shù)量,如果是,則將接收的消息保存,對(duì)接收的消息設(shè)置已接收標(biāo)志,否則,繼續(xù)進(jìn)行消息的接收處理。
全文摘要
本發(fā)明涉及一種基于消息測(cè)試的消息收發(fā)控制裝置及其方法。本發(fā)明的核心是將復(fù)雜的消息收發(fā)和結(jié)果判斷邏輯封裝成一個(gè)腳本文件,然后,利用簡(jiǎn)單的消息參數(shù)和邏輯控制參數(shù)來(lái)控制腳本文件具體的收發(fā)判斷邏輯處理過(guò)程,從而使得消息收發(fā)的控制處理更為靈活、方便。本發(fā)明中,采用消息參數(shù)及邏輯控制參數(shù)和控制邏輯控制處理腳本(即消息收發(fā)控制模塊)分離的方式,既便于腳本編寫(xiě),又不容易出錯(cuò);而且,維護(hù)方便,如果要增加消息只需要簡(jiǎn)單的增加消息名和相關(guān)參數(shù),不需要修改邏輯控制處理腳本;另外,本發(fā)明還有效地避免了因消息數(shù)增加導(dǎo)致腳本復(fù)雜度增加的問(wèn)題。
文檔編號(hào)H04L12/24GK1741479SQ20041007671
公開(kāi)日2006年3月1日 申請(qǐng)日期2004年8月29日 優(yōu)先權(quán)日2004年8月29日
發(fā)明者吳曉冬 申請(qǐng)人:華為技術(shù)有限公司
網(wǎng)友詢(xún)問(wèn)留言 已有0條留言
  • 還沒(méi)有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1
晴隆县| 丰原市| 昌宁县| 龙南县| 岳普湖县| 兰溪市| 金阳县| 丰县| 德州市| 云南省| 鸡西市| 宁海县| 高青县| 牡丹江市| 苏州市| 车险| 宣威市| 承德市| 六枝特区| 丰城市| 葵青区| 独山县| 乐东| 淮安市| 黄石市| 米泉市| 桦甸市| 方城县| 徐闻县| 曲水县| 抚松县| 常熟市| 法库县| 阿拉善盟| 江山市| 万山特区| 德清县| 道孚县| 赞皇县| 吉隆县| 会宁县|