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

基于組件復(fù)用的腳本生成裝置及其方法

文檔序號(hào):6514960閱讀:348來源:國(guó)知局
專利名稱:基于組件復(fù)用的腳本生成裝置及其方法
技術(shù)領(lǐng)域
本發(fā)明涉及一種協(xié)議腳本生成裝置及其使用方法,尤其涉及一種基于組件復(fù)用的協(xié)議腳本生成裝置及其使用方法。
背景技術(shù)
通信的基本形式就是協(xié)議消息,無論模塊之間的接口通訊,還是系統(tǒng)之間的協(xié)議報(bào)文都是通過約定格式的二進(jìn)制消息流來實(shí)現(xiàn)的。因此在對(duì)通信產(chǎn)品的各個(gè)子系統(tǒng)進(jìn)行維護(hù)、測(cè)試、調(diào)試的時(shí)候,不可避免要解析或構(gòu)造這樣的二進(jìn)制編碼消息流來模擬與其交互的其他子系統(tǒng),這些二進(jìn)制數(shù)據(jù)具有相對(duì)固定的格式,一般通過接口文檔或協(xié)議文檔明確定義下來。模擬系統(tǒng)之間的消息交互,可以通過兩種方法(1)消息編輯界面(2)測(cè)試腳本。前一種方法的優(yōu)點(diǎn)是直觀方便,用戶在界面中輸入?yún)f(xié)議各個(gè)字段的二進(jìn)制數(shù)據(jù),封裝成接口消息,通過通訊模塊進(jìn)行發(fā)送,缺點(diǎn)是不靈活,難以構(gòu)造復(fù)雜流程的測(cè)試用例;后一種方法則強(qiáng)大靈活得多,采用TCL、PYTHON等腳本語言,用戶即可以構(gòu)造消息,又可以控制消息的處理流程,缺點(diǎn)是不夠直觀,需要掌握一定的腳本語法和花費(fèi)相當(dāng)多的腳本編寫工作量。良好的測(cè)試腳本可以代替用戶來完成消息構(gòu)造、收發(fā)、解析、比較等操作步驟,因此采用腳本是實(shí)現(xiàn)自動(dòng)化測(cè)試的一個(gè)基本前提。正如Visual Studio中的應(yīng)用程序向?qū)?APPWIZZARD)代碼向?qū)橛脩羯梢粋€(gè)基本應(yīng)用程序框架一樣,編寫測(cè)試腳本同樣可以采用腳本向?qū)У募夹g(shù)?;趨f(xié)議消息的測(cè)試腳本向?qū)Ы缑婢邆湟欢ǖ墓残?,在很多?yīng)用場(chǎng)合功能可以復(fù)用,COM組件編程模型提供了一個(gè)良好的軟件復(fù)用解決方案,可以做到語言、平臺(tái)無關(guān)性。利用腳本向?qū)ё詣?dòng)生成腳本框架目前還沒有比較通用且可復(fù)用的技術(shù)方案,現(xiàn)有測(cè)試腳本編寫方式基本上都是手工編寫,然后有一些簡(jiǎn)單的語法輔助功能,如visualtcl、itt等工具中的語法模板,可以自動(dòng)產(chǎn)生while、for、(if,else)、for each等流程控制腳本。這和應(yīng)用層的自動(dòng)化腳本框架是兩個(gè)層面的概念,兩者的區(qū)別就好比利用Visual Assist生成一個(gè)c/c++語言for循環(huán)和利用Visual Studio生成一個(gè)MFC應(yīng)用程序。但其存在的缺點(diǎn)是由于用例腳本是用手工編寫完成,所以工作量較大;由于每個(gè)人按照自己的習(xí)慣來編寫腳本,所以腳本的格式不統(tǒng)一、不規(guī)范,因此移植性較差;由于缺少協(xié)議消息編輯界面,所以利用腳本構(gòu)造二進(jìn)制消息的過程不直觀。

發(fā)明內(nèi)容
本發(fā)明的目的是為了克服上述現(xiàn)有技術(shù)中存在的不足,進(jìn)而提供一種基于組件復(fù)用的腳本生成裝置及方法,其能夠統(tǒng)一腳本創(chuàng)建過程和規(guī)范,統(tǒng)一消息編輯界面和測(cè)試腳本兩種交互消息模擬方案的優(yōu)點(diǎn),并能夠利用可復(fù)用的協(xié)議消息編輯界面。
根據(jù)本發(fā)明的一個(gè)方面,本發(fā)明提供了一種基于組件復(fù)用的腳本生成裝置,包括第一消息輸入引導(dǎo)模塊,用于引導(dǎo)用戶選擇輸入消息的多種配置信息;第二消息輸入引導(dǎo)模塊,根據(jù)所述第一消息輸入引導(dǎo)模塊中輸入的所述配置信息選擇消息配置文件;文件解析模塊,用于解析所述配置文件以獲得所述消息的名稱和各個(gè)字段屬性;腳本生成模塊,用于生成固定的腳本頭和腳本尾,其中,所述第二消息輸入引導(dǎo)模塊包括消息編輯界面模塊,用于顯示所述文件解析模塊獲取的所述消息的名稱和各個(gè)字段屬性,并引導(dǎo)用戶輸入各個(gè)字段的取值,所述腳本生成模塊根據(jù)所述消息的各個(gè)字段的屬性、所述消息的各個(gè)字段的取值和在所述第一消息輸入引導(dǎo)模塊中輸入的所述多種配置信息生成消息幀構(gòu)造部分,并與所述腳本頭和腳本尾一起構(gòu)成完整的腳本框架。
根據(jù)本發(fā)明的第二方面,本發(fā)明提出了一種基于組件復(fù)用的協(xié)議腳本生成裝置使用方法,包括1)啟動(dòng)腳本向?qū)?,在所述腳本向?qū)е休斎胂⒌亩喾N配置信息;2)文件解析模塊讀取并解析一配置文件以獲得所述消息的名稱和各個(gè)字段屬性;3)消息編輯界面模塊獲取所述消息的名稱和各個(gè)字段屬性,并引導(dǎo)用戶輸入所述消息的各個(gè)字段的取值;4)腳本生成模塊生成固定的腳本頭和腳本尾,并根據(jù)所述消息的所述各個(gè)字段的屬性、所述消息的各個(gè)字段的取值以及所述多種配置信息生成消息幀構(gòu)造部分,所述腳本生成模塊將所述腳本頭和腳本尾與所述消息幀構(gòu)造部分一起構(gòu)成完整的腳本框架。
本發(fā)明的基于組件復(fù)用的協(xié)議腳本生成裝置,可以簡(jiǎn)化腳本編寫方式,如同Visual Studio的AppWizard讓程序員編寫應(yīng)用程序變得輕松一樣,本發(fā)明的向?qū)軌蜃寽y(cè)試工程師編寫腳本變得輕松,在腳本向?qū)У囊龑?dǎo)下,用戶只需要關(guān)注具體的業(yè)務(wù)數(shù)據(jù),而無需關(guān)注腳本語法、編碼方式、消息通訊、結(jié)果比較、日志紀(jì)錄、數(shù)值轉(zhuǎn)換等繁多的腳本細(xì)節(jié),從而大大減少腳本編寫的工作量。使用本發(fā)明的向?qū)Э梢员WC生成腳本的風(fēng)格一致性、語法規(guī)范性和可移植性。同時(shí),由于本發(fā)明的向?qū)Щ跍y(cè)試腳本框架的概念,因此腳本編寫分工明確,一部分工作量投入腳本框架的構(gòu)造,另一部分工作量則專注于具體的業(yè)務(wù)數(shù)據(jù)和測(cè)試流程。另外,本發(fā)明的ActiveX控件可以被方便地復(fù)用于其它測(cè)試工具,加大共享程度,避免重復(fù)編碼。
附圖簡(jiǎn)要說明

圖1是本發(fā)明的基于組件復(fù)用的協(xié)議腳本生成向?qū)ЫY(jié)構(gòu)示意圖;圖2是本發(fā)明的基于組件復(fù)用的協(xié)議腳本生成向?qū)У牡谝徊襟E模型圖;圖3是本發(fā)明的消息編輯界面控件XGrid圖形界面示意圖;圖4是本發(fā)明的基于組件復(fù)用的協(xié)議腳本生成向?qū)У牡诙襟E模型圖。
具體實(shí)施例方式
圖1是本發(fā)明的基于組件復(fù)用的協(xié)議腳本生成向?qū)ЫY(jié)構(gòu)示意圖。如圖1所示,包括引導(dǎo)對(duì)話框1模塊,引導(dǎo)對(duì)話框2模塊,文件解析模塊,腳本生成模塊,其中,引導(dǎo)對(duì)話框2模塊包括消息編輯界面模塊。
引導(dǎo)對(duì)話框1模塊和引導(dǎo)對(duì)話框2模塊分別表示本發(fā)明的基于組件復(fù)用的協(xié)議腳本生成向?qū)У牡谝徊襟E和第二步驟的用戶界面接口,其利用簡(jiǎn)單直觀的界面引導(dǎo)用戶輸入所需的各種配置信息,可采用公知的Visual Studio中的應(yīng)用程序向?qū)Ц袷?,也可采用其它的用戶界面格式,在本發(fā)明的實(shí)施方式中,引導(dǎo)對(duì)話框1模塊和引導(dǎo)對(duì)話框2模塊采用通用的用戶界面(GUI)格式。引導(dǎo)對(duì)話框1模塊和引導(dǎo)對(duì)話框2模塊的具體界面創(chuàng)建過程類似于創(chuàng)建公知的CEdit和CListctrl控件一樣。
更具體地說,引導(dǎo)對(duì)話框1模塊用來引導(dǎo)用戶選擇輸入消息的配置文件類型、應(yīng)用類型、語法類型和編碼類型,在本發(fā)明中,配置文件類型可以是ASN.1或XML格式,也可以由用戶自定義的格式,即由用戶自己定義一個(gè)配置文件*.cfg。在配置文件中包括消息名稱,消息體兩部分。其中,消息體包含了消息屬性名稱、屬性類型、取值范圍和屬性說明等。應(yīng)用類型可為過程、用例或消息體。其中,用例腳本中需要記錄測(cè)試結(jié)果以及恢復(fù)環(huán)境,可以單獨(dú)完成一個(gè)測(cè)試任務(wù),過程腳本是用來給其他腳本調(diào)用的,過程腳本的格式和用例腳本的格式是不同的。消息體指的是用戶可能只需要構(gòu)造一個(gè)數(shù)據(jù)幀,這個(gè)時(shí)候僅僅生成一個(gè)消息體部分就夠了。對(duì)于語法類型,用戶可以選取公知的TCL或Python語法類型,也可以根據(jù)需要自定義所需的語法類型。選擇編碼方式可以是公知的PER或BER編碼方式,也可以是自行定義的格式。如果編碼方式不同,消息體就不同,例如對(duì)于單字節(jié)編碼00,如果采用TLV編碼就得寫成00 01 00。語法類型不同會(huì)影響腳本的外在形式,如使用tcl語法可產(chǎn)生的語句為set a{00},而使用Python語法產(chǎn)生的語句為a=0。引導(dǎo)對(duì)話框1模塊的具體圖形界面如圖2所示。
引導(dǎo)對(duì)話框2模塊用于引導(dǎo)用戶根據(jù)在引導(dǎo)對(duì)話框1模塊中輸入的配置文件類型,選擇具體的消息配置文件。引導(dǎo)對(duì)話框2模塊包括的消息編輯界面模塊可以使用戶直觀地輸入消息的各個(gè)字段的二進(jìn)制數(shù)據(jù),并將其封裝成接口消息。消息編輯界面模塊與引導(dǎo)對(duì)話框2模塊還可以分別單獨(dú)存在。在本發(fā)明的實(shí)施方式中,消息編輯界面模塊與引導(dǎo)對(duì)話框2模塊形成一體,如圖4所示。
本發(fā)明的消息編輯用戶界面模塊是一個(gè)自行設(shè)計(jì)實(shí)現(xiàn)的ActiveX控件,并將其命名為XGrid,ActiveX技術(shù)是基于COM組件技術(shù)的一個(gè)擴(kuò)展,是公知標(biāo)準(zhǔn)的軟件技術(shù)。圖3是本發(fā)明的XGrid控件外觀示意圖,如圖3所示,本發(fā)明的XGrid控件用戶界面包含兩個(gè)部分,一個(gè)是表格頭,一個(gè)是消息編輯表格體,其中表格頭用來顯示消息名稱,消息名稱由文件解析模塊獲得,表格體用來顯示消息各個(gè)字段的屬性以及接受用戶輸入字段的實(shí)際取值。在XGrid控件初始生成時(shí),表格頭和消息編輯表格體都為空。XGrid控件提供的兩個(gè)主要接口是LoadCfg(BSTR bsCfg)和SaveCfg(BSTR FAR*bsUserDatas),其中,LoadCfg從上述文件解析模塊獲取到消息的配置信息,如消息名稱、消息體的各個(gè)字段名稱,字段屬性等,SaveCfg用來保存用戶輸入的各個(gè)字段取值。消息編輯表格體支持背景、文本著色,允許設(shè)置是否可編輯并可自動(dòng)、手動(dòng)調(diào)整該控件單元(CELL)大小并支持橫豎滾動(dòng)條。在該控件中定義的接口還包括創(chuàng)建接口Create(缺省生成的)、生成二進(jìn)制編碼流接口CreateMsg2等。另外該控件還聚合了編解碼類、協(xié)議文件分析類、界面網(wǎng)格繪制類,在控件作為通用的可復(fù)用控件還具有的其它功能,在這里不在贅述。
文件解析模塊的作用是解析從引導(dǎo)對(duì)話框2模塊中選擇具體的消息配置文件。文件解析模塊對(duì)應(yīng)一個(gè)或多個(gè)解析器類,不同格式的配置文件擁有不同的解析器類,也就是說,不同的解析器類負(fù)責(zé)解析各自格式的配置文件,文件解析模塊是這些解析器類的集合。如果只有一種格式的配置文件,那么文件解析模塊就是由一個(gè)解析器類構(gòu)成。
解析器類的基類為IBaseParser,基類IBaseParser能夠提供最基本的讀寫文件、解析接口,在本發(fā)明中,IBaseParser主要提供的接口函數(shù)包括loadfile(CString filename),parsefile(CString filecontent),parsebody(CStringbody),parseline(CString line),分別用來讀入文件,解析整個(gè)文件,解析文件中的一個(gè)消息定義塊,解析消息定義塊中的每一行。文件解析模塊通過上述接口函數(shù)從引導(dǎo)對(duì)話框2模塊中選擇的配置文件中獲得消息的名稱和消息的各個(gè)字段屬性。
消息編輯界面根據(jù)消息的名稱和各個(gè)字段屬性對(duì)其具有的表格頭和消息編輯表格體進(jìn)行填充。之后,用戶輸入各屬性相應(yīng)的二進(jìn)制值。
腳本生成模塊可用來生成固定格式的腳本頭和腳本尾。腳本頭通常包含腳本說明、腳本作者、腳本編寫時(shí)間、記錄腳本執(zhí)行開始時(shí)間,腳本尾通常包含結(jié)果比較、記錄測(cè)試結(jié)果、記錄腳本執(zhí)行結(jié)束時(shí)間。具體地說,腳本開始執(zhí)行時(shí)獲取系統(tǒng)時(shí)間作為腳本執(zhí)行開始時(shí)間,腳本執(zhí)行結(jié)束時(shí)獲取系統(tǒng)時(shí)間作為腳本執(zhí)行結(jié)束時(shí)間,測(cè)試結(jié)果根據(jù)結(jié)果比較獲得,結(jié)果比較成功則記錄成功。腳本頭和腳本尾的其它信息可用公知的方法獲得。腳本生成模塊根據(jù)文件解析模塊解析出來的消息的各個(gè)字段屬性(即解析出來的字段名稱、字段結(jié)構(gòu)、字段長(zhǎng)度、字段的描述說明和字段的取值范圍)、消息編輯界面中用戶輸入的各個(gè)字段的實(shí)際取值,以及根據(jù)在引導(dǎo)對(duì)話框1模塊中輸入的消息應(yīng)用類型、語法類型和編碼類型,生成腳本框架中的消息幀構(gòu)造部分,并加上腳本頭、腳本尾固定格式部分,最終產(chǎn)生整個(gè)的腳本框架。
本領(lǐng)域的普通技術(shù)人員應(yīng)該認(rèn)識(shí)到,上述配置文件是數(shù)據(jù)層,上述編輯界面是用戶層,配置文件不同不會(huì)影響消息編輯界面,對(duì)于用戶而言,使用統(tǒng)一的界面。
下面以一個(gè)測(cè)試腳本生成的過程為情景進(jìn)一步說明本發(fā)明實(shí)施例的各個(gè)模塊之間的關(guān)系,并對(duì)基于組件復(fù)用的協(xié)議腳本生成裝置的使用方法進(jìn)行詳細(xì)說明。
在新建腳本時(shí),首先啟動(dòng)引導(dǎo)對(duì)話框1模塊,如圖2所示。在引導(dǎo)對(duì)話框1模塊中分別選擇腳本類型、語法類型、編碼類型為用例、Tcl、BER,選擇配置文件類型為自定義,即,選擇*.cfg。
之后,啟動(dòng)引導(dǎo)對(duì)話框2模塊,在引導(dǎo)對(duì)話框2模塊中,用戶在左邊樹視圖中選擇后綴名為cfg的某個(gè)配置文件,例如,選擇的用戶自定義的配置文件的內(nèi)容如下//TYPEUSER DEFINED CONFIGURATION FILE//VER1.0<TABLE>
<NAME>
BAM_MPU_MNT_INTERFACE_REQ</NAME>
<BODY>
結(jié)構(gòu)和參數(shù)名 稱類 型取值范圍 結(jié)構(gòu)和參數(shù)說明ucFrameNo UINT8 PS0-31 RNC0-17 CS0-255 機(jī)框號(hào)ucSlotNo UINT8 0-6,9-14 槽位號(hào) 0xff表示查詢?nèi)縰cSubSlotNo UINT8 0-4 子槽號(hào) 0xff表示查詢?nèi)縰cPortNo UINT8 0-7 端口號(hào) 0xff表示查詢?nèi)縰cVirtualPortNo UINT8 1-31 虛端口號(hào) 0xff表示查詢?nèi)?amp;lt;/BODY>
<REFTABLE>
BAM_MPU_MNT_IP_REQ</REFTABLE>
</TABLE>
<STRUCT>::=S_OM_TIME_INFOuwYear UINT16 1900-3000年ucMonth UINT8 1-12月ucDay UINT8 1-365日ucHour UINT8 1-24小時(shí)</STRUCT>
其中,TABLE,REFTABLE,STRUCT,NAME,BODY為關(guān)鍵字,如上所述,每一個(gè)表格TABLE包含消息名稱,消息體兩部分;消息體包含了消息屬性名稱、屬性類型、取值范圍、屬性說明四個(gè)字段;字段以TAB隔開;屬性以行區(qū)分開;消息屬性名稱是一個(gè)字符串,屬性類型是一個(gè)集合{UINT8,UINT16,UINT32,UINT8[int LEN],結(jié)構(gòu),嵌套表格},屬性取值范圍以“-”分隔開,屬性說明也是一個(gè)字符串;消息體BODY可以嵌套其它表格,用REFTABLE關(guān)鍵字表示;屬性可以是一個(gè)結(jié)構(gòu),結(jié)構(gòu)需要在配置文件中定義,定義語法為<STRUCT>::=the name of structstruct body...
</STRUCT>
文件頭包含文件說明和文件版本信息行,每行以“//”開頭。
腳本向?qū)Ц鶕?jù)這個(gè)配置文件,可以得到消息的整體結(jié)構(gòu),以方便構(gòu)造消息編輯界面。
文件解析模塊利用上述接口函數(shù)loadfile(CString filename),parsefile(CString filecontent),parsebody(CString body),parseline(CString line)分別讀入上述配置文件并對(duì)該配置文件進(jìn)行解析后,得到消息的名稱為BAM_MPU_MNT_ITERFACER_EQ,和得到消息的各個(gè)字段屬性為ucFrameNo,ucSlotNo,ucPortNo,ucVirtualPortNo,s_time_info。上述得到的消息的名稱和各屬性為字符串的形式。
消息編輯界面利用其接口函數(shù)LoadCfg(BSTR bsCfg)獲得上述消息的名稱和各個(gè)字段屬性后,對(duì)其具有的表格頭和消息編輯表格體進(jìn)行填充,如圖4所示。之后,用戶輸入各屬性相應(yīng)的二進(jìn)制值,在這里用戶對(duì)屬性u(píng)cFrameNo,ucSlotNo,ucPortNo,ucVirtualPortNo,s_time_info分別輸入的值為00,09,ff,01和00 00 00 00 00。
在用戶選擇配置文件后啟動(dòng)腳本生成模塊,腳本生成模塊從消息編輯界面獲取上述各字段屬性、字段取值,并根據(jù)在引導(dǎo)對(duì)話框1模塊選擇的編碼方式和語法類型生成腳本框架中的消息幀構(gòu)造部分。消息幀構(gòu)造部分的具體內(nèi)容如下#記錄用例開始時(shí)間writelog″testtime″START_TIME#消息頭BEGINSCRIPT$BAM_MPU_MNT_INTERFACE_REQ#消息體#操作類型增加=01,刪除=00set ucOperType{01}#機(jī)框號(hào)set ucFrameNo{00}#槽號(hào)set ucSlotNo{09}#端口號(hào)set ucPortNo{ff}#虛端口號(hào)set ucVirtualPortNo{01}#時(shí)間set s_time_info $YEAR$MONTH$DAY$TIMEset s_time_info“$s_time_info 00 00 00 00 00”#組裝
set TableBody $ ucOperType$ucFrameNo$ucSlotNo\$ucSubSlotNo$ucPortNo$ucVirtualPortNo$s_time_infoset body $TableHead$TableBodyset len[getframelen $body]set length[expr $len+20]set head[SetLength $head $length]#數(shù)據(jù)幀set AppFrame $head$body#發(fā)送消息、比較應(yīng)答消息,記錄用例執(zhí)行結(jié)果ENDSCRIPT#記錄用例結(jié)束時(shí)間writelog″testtime″END_TIME其中的BEGINSCRIPT,ENDSCRIPT過程封裝了消息頭構(gòu)造、發(fā)送、結(jié)果比較、紀(jì)錄測(cè)試報(bào)告等過程,消息體部分則對(duì)應(yīng)用戶在前面消息編輯界面中輸入的應(yīng)用數(shù)據(jù)。
同時(shí),腳本生成模塊還生成腳本頭、腳本尾等固定格式部分。
腳本生成模塊生成固定格式的腳本頭如下#腳本描述空模板#腳本創(chuàng)建者Please add your name here.
#腳本創(chuàng)建時(shí)間2003-07-29,1614#記錄用例開始時(shí)間writelog″testtime″START_TIME#消息頭BEGINSCRIPT $BAM_MPU_MNT_DSP_TRAFFIC_STATISTIC_REQ腳本生成模塊生成固定格式的腳本尾如下
#發(fā)送消息、比較應(yīng)答消息,記錄用例執(zhí)行結(jié)果ENDSCRIPT#記錄用例結(jié)束時(shí)間writelog″testtime″END_TIME上述生成的消息幀構(gòu)造部分加上該消息頭和消息尾最終產(chǎn)生整個(gè)的腳本框架。
在上面僅對(duì)配置文件格式自定義的過程進(jìn)行描述,上述語法類型和編碼類型的自定義過程可參照本領(lǐng)域的公知常識(shí)結(jié)合配置文件格式自定義的過程得到,這對(duì)于本領(lǐng)域的普通技術(shù)人員來說是顯而易見的。
上述公開的實(shí)施方案是為了讓本領(lǐng)域的普通技術(shù)人員進(jìn)行實(shí)施和使用本發(fā)明。對(duì)本領(lǐng)域的技術(shù)人員來說,顯然可以對(duì)這些實(shí)施方案的進(jìn)行各種修改和變換。但是,這些修改和變換都不應(yīng)脫離本發(fā)明精神和范圍。因此,本發(fā)明不應(yīng)該局限于這里提到的具體實(shí)施方案,而僅受所附權(quán)利要求的限制。
權(quán)利要求
1.一種基于組件復(fù)用的腳本生成裝置,包括第一消息輸入引導(dǎo)模塊,用于引導(dǎo)用戶選擇輸入消息的多種配置信息;第二消息輸入引導(dǎo)模塊,根據(jù)所述第一消息輸入引導(dǎo)模塊中輸入的所述多種配置信息選擇消息配置文件;文件解析模塊,用于解析所述配置文件以獲得所述消息的名稱和各個(gè)字段屬性;腳本生成模塊,用于生成固定的腳本頭和腳本尾,其中,所述第二消息輸入引導(dǎo)模塊包括消息編輯界面模塊,用于顯示所述文件解析模塊獲取的所述消息的名稱和各個(gè)字段屬性,并引導(dǎo)用戶輸入所述各個(gè)字段的取值,所述腳本生成模塊根據(jù)所述消息的各個(gè)字段的屬性、所述消息的各個(gè)字段的取值和在所述第一消息輸入引導(dǎo)模塊中輸入的所述多種配置信息以生成消息幀構(gòu)造部分,并與所述腳本頭和腳本尾一起構(gòu)成完整的腳本框架。
2.如權(quán)利要求1所述的裝置,其特征在于,所述多種配置信息包括配置文件類型,應(yīng)用類型,語法類型,編碼類型。
3.如權(quán)利要求2所述的裝置,其特征在于,所述消息配置文件類型是ASN.1、XML或自定義格式中的一種。
4.如權(quán)利要求2所述的裝置,其特征在于,所述應(yīng)用類型是過程、用例或消息體中的一種。
5.如權(quán)利要求2所述的裝置,其特征在于,所述編碼類型是PER、BER中的一種。
6.如權(quán)利要求2所述的裝置,其特征在于,所述語法類型是Python、TCL、自定義中的一種。
7.如權(quán)利要求1所述的裝置,其特征在于,所述消息編輯界面模塊是可復(fù)用Active控件,所述控件包括創(chuàng)建接口,載入?yún)f(xié)議文件接口,保存用戶數(shù)據(jù)接口和生成二進(jìn)制編碼流接口。
8.一種基于組件復(fù)用的腳本生成方法,包括1)啟動(dòng)腳本向?qū)?,在所述腳本向?qū)е休斎胂⒌亩喾N配置信息;2)文件解析模塊讀取并解析一配置文件以獲得所述消息的名稱和各個(gè)字段屬性;3)消息編輯界面模塊獲取所述消息的名稱和各個(gè)字段屬性,并引導(dǎo)用戶輸入所述消息的各個(gè)字段的取值;4)腳本生成模塊生成固定的腳本頭和腳本尾,并根據(jù)所述消息的所述各個(gè)字段的屬性、所述消息的各個(gè)字段的取值以及所述多種配置信息生成消息幀構(gòu)造部分,所述腳本生成模塊將所述腳本頭和腳本尾與所述消息幀構(gòu)造部分一起構(gòu)成完整的腳本框架。
9.如權(quán)利要求8所述的方法,其特征在于,所述多種配置信息包括配置文件類型,腳本類型,語法類型,編碼類型。
10.如權(quán)利要求8所述的方法,其特征在于,所述方法還包括對(duì)所述多種配置信息和所述配置文件自定制的步驟。
11.如權(quán)利要求8、9或10所述的方法,其特征在于所述消息編輯界面模塊包括用戶自定義的ActiveX控件。
全文摘要
公開了基于組件復(fù)用的協(xié)議腳本生成裝置及其使用方法,包括第一消息輸入引導(dǎo)模塊,用于引導(dǎo)用戶選擇輸入消息的多種配置信息;第二消息輸入引導(dǎo)模塊,根據(jù)第一消息輸入引導(dǎo)模塊中輸入的配信息選擇消息配置文件;文件解析模塊,用于解析配置文件以獲得消息的名稱和各個(gè)字段屬性;腳本生成模塊,用于生成固定的腳本頭和腳本尾,其中,第二消息輸入引導(dǎo)模塊包括消息編輯界面模塊,用于顯示文件解析模塊獲取的所述消息的名稱和各個(gè)字段屬性,并引導(dǎo)用戶輸入各個(gè)字段的取值,腳本生成模塊根據(jù)消息的各個(gè)字段的屬性、消息的各個(gè)字段的取值和在第一消息輸入引導(dǎo)模塊中輸入的多種配置信息生成消息幀構(gòu)造部分,并與腳本頭和腳本尾一起構(gòu)成完整的腳本框架。
文檔編號(hào)G06F17/30GK1816043SQ20051000729
公開日2006年8月9日 申請(qǐng)日期2005年2月6日 優(yōu)先權(quán)日2005年2月6日
發(fā)明者陳小峰 申請(qǐng)人:華為技術(shù)有限公司
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1
汕头市| 吉木萨尔县| 吉木乃县| 石棉县| 平乡县| 龙南县| 清河县| 江津市| 兴海县| 常熟市| 和平县| 砚山县| 北海市| 海盐县| 怀来县| 卓尼县| 柘城县| 乐都县| 疏附县| 临沂市| 堆龙德庆县| 长春市| 高青县| 梁山县| 册亨县| 延长县| 遵化市| 公主岭市| 鄂尔多斯市| 盐源县| 沐川县| 寿宁县| 沙河市| 仙桃市| 昔阳县| 盐津县| 施甸县| 固原市| 乐业县| 三亚市| 伊春市|