亚洲成年人黄色一级片,日本香港三级亚洲三级,黄色成人小视频,国产青草视频,国产一区二区久久精品,91在线免费公开视频,成年轻人网站色直接看

測試公共對象請求代理結(jié)構(gòu)的方法和測試工具的制作方法

文檔序號:6461925閱讀:187來源:國知局
專利名稱:測試公共對象請求代理結(jié)構(gòu)的方法和測試工具的制作方法
技術(shù)領(lǐng)域
本發(fā)明涉及通信領(lǐng)域,并且特別地,涉及一種測試公共對象請 求^理結(jié)構(gòu)的方法和測i式工具。
背景技術(shù)
公共對象請求代理結(jié)構(gòu)(Common Object Request Broker Architecture, CORBA )是為實現(xiàn)分布式計算而引入的。CORBA為 開發(fā)分布式對象系統(tǒng)提供統(tǒng)一的標(biāo)準(zhǔn),該標(biāo)準(zhǔn)與具體的平臺、語言 和廠商無關(guān)。CORBA內(nèi)部結(jié)構(gòu)分為三部分,即,才亥心部分只于象i青,,4戈理 (Object Request Broker, ORB )、客戶實玉見(IDL Stub )、以及對象 實現(xiàn)(IDL Skeleton )。 ORB是客戶應(yīng)用程序能夠調(diào)用遠端對象方法 的一種機制。IDL (接口定義語言)Stub (樁)和IDL Skeleton (骨架)是由接口定義語言編譯器(IDL Complier)根據(jù)已定義的IDL 自動編譯生成。IDL是CORBA體系中的另 一個重要概念。ORB可以使CORBA 估文到與平臺無關(guān),IDL使CORBA做到與語言無關(guān)。IDL的核心是 將對象實現(xiàn)與對象接口相分離,在客戶應(yīng)用和服務(wù)器應(yīng)用之間建立 一個標(biāo)準(zhǔn)的描述語言,描述在應(yīng)用程序中需要用到的對象類型、對象接口、對象所支持的操作、以及操作時可能引發(fā)的異常,與具體 的實現(xiàn)語言和平臺無關(guān)。目前,CORBA的主要測試方法是在客戶端編寫專門的界面測 試工具,對CORBA接口信息的準(zhǔn)確性進行測試,主要的測試手萃殳 是手工測試。由于從界面測試工具獲取到CORBA接口的信息量非 常龐大,測試繁瑣且非常容易出確昔,存在一定的測試泄漏。上述現(xiàn)有的測試方法存在以下缺點第一,測試輸入?yún)?shù)4務(wù)改 過程復(fù)雜,不利于對各種組合參數(shù)進行測試,測試效率較低;第二, 通常IDL定義的方法4交多,客戶端沒有一個對所有定義方法的遍歷 呈現(xiàn)方式,測試覆蓋率難于得到^f呆i正;第三,測試過程及測試結(jié)果 難于^f呆存,由于信息量大人工才交—驗測試結(jié)果才及易出4晉,不利于實現(xiàn) 測試的自動化;第四,由于客戶端無法展現(xiàn)IDL中定義的函數(shù)結(jié)構(gòu), 使系統(tǒng)測試人員對IDL的定義及接口 了解不夠深刻。目前,尚未提 出能夠解決上述問題的技術(shù)方案。發(fā)明內(nèi)容考慮到上述問題而做出本發(fā)明,為此,本發(fā)明的主要目的在于 提供一種測試公共對象請求代理結(jié)構(gòu)的方法和測試工具,以解決相 關(guān)才支術(shù)中現(xiàn)有CORBA的測試方法所存在的測試效率較低、測試覆 蓋率差、無法自動實現(xiàn)、以及測試不夠直》見的問題。根據(jù)本發(fā)明的一個實施例,提供了 一種測試公共對象請求代理 結(jié)構(gòu)的方法,用于通過測試工具、結(jié)果4交-驗才莫塊實現(xiàn)對;波測對象的 觀寸i式。該方法包4舌步艱《S102,測i式工具i殳置編譯選項,以選定^皮測 對象的待編譯的接口定義語言文件;步驟S104,測試工具對選定的 接口定義語言文件進行編譯,連接被測對象的命名服務(wù)并登陸被測對象;步驟S106,測試工具獲取被測對象支持的管理者,并根據(jù)獲 取的管理者將相應(yīng)的測試參數(shù)輸入至^皮測對象以對被測對象進4亍測 試;步驟S108,結(jié)果校驗?zāi)K接收被測對象的測試輸出,并將測試 輸出與基準(zhǔn)數(shù)據(jù)進行比較以生成測試結(jié)果。此外,該方法步驟S102進一步包括配置測試工具的接口池, 并在接口池的瀏覽器中設(shè)置編譯選項、接口定義語言文件及對接口 定義語言文件進行編譯的編譯器。其中,在步驟S104中,測試工具登陸被測對象的處理具體為 測試工具向#皮測對象豸命入-驗i正信息;在#:測對象4艮據(jù)4lr入的 -驗i正孑言 息判斷-驗i正通過的情況下,測試工具登陸#皮測對象。此外,步驟S106中進一步包括測試工具對需要向被測對象 輸入的測試4#入進4于參數(shù)化處理,獲得測試參凄t;測試工具獲取的 管理者得到管理者下的函數(shù),并調(diào)用函數(shù)執(zhí)行測試參數(shù)以對被測對 象進行測試。此外,在步驟S106中,在將測試參數(shù)輸入至被測對象之前, 進一步包括測試工具呈現(xiàn)獲取的被測對象的管理者所支持的函數(shù) 的接口定義語言的結(jié)構(gòu)格式。根據(jù)本發(fā)明的另 一個實施例,提供了 一種測試公共對象請求代 理結(jié)構(gòu)的測試工具。該測試工具包4舌驅(qū)動才莫塊,用于^殳置編譯選 項、對選定的接口定義語言文件進行編譯、連接被測對象的命名服 務(wù)、以及登陸被測對象;呈現(xiàn)模塊,用于獲取^皮測對象所支持的管 理者及管理者支持的函數(shù)、呈現(xiàn)函數(shù)的接口定義語言的結(jié)構(gòu)格式、 以及確定函數(shù)的測試參數(shù)輸入格式;執(zhí)行模塊,用于讀取輸入的測 試參數(shù)并調(diào)用相應(yīng)函數(shù)、獲取調(diào)用結(jié)果。此外,驅(qū)動模塊還能夠在預(yù)設(shè)置的測試工具的接口池的瀏覽器 中設(shè)置編譯選項、并選定接口定義語言文件及對接口定義語言文件進行編i奪的編i爭器。其中,驅(qū)動模塊向被測對象輸入驗證信息;在被測對象根據(jù)輸入的驗證信息判斷驗證通過的情況下,驅(qū)動模塊登陸被測對象。通過本發(fā)明的上述技術(shù)方案,能夠有效提高測試效率和測試覆 蓋率、降低測試及管理成本、使測試更加直觀及靈活可配。


此處所說明的附圖用來提供對本發(fā)明的進一步理解,構(gòu)成本申 i青的一部分,本發(fā)明的示意性實施例及其說明用于解釋本發(fā)明,并不構(gòu)成對本發(fā)明的不當(dāng)限定。在附圖中圖1是才艮據(jù)本發(fā)明方法實施例的測試公共對象請求代理結(jié)構(gòu)的 方法的流程圖;圖2是實現(xiàn)根據(jù)本發(fā)明方法實施例的測試公共對象請求代理結(jié) 構(gòu)的方法的測i式系統(tǒng)的沖匡圖;圖3是才艮據(jù)本發(fā)明方法實施例的測試公共對象請求代理結(jié)構(gòu)方 法的處理實例的流禾呈圖;以及圖4是^4居本發(fā)明裝置實施例的測試公共對象請求代理結(jié)構(gòu)的 測試工具的框圖;以及圖5是根據(jù)本發(fā)明裝置實施例的測試公共對象請求代理結(jié)構(gòu)的 測試工具的功能結(jié)構(gòu)示意圖。
具體實施方式
方法實施例在本實施例中,提供了 一種測試公共對象請求代理結(jié)構(gòu)的方法, 用于通過測試工具、結(jié)果校驗?zāi)K實現(xiàn)對被測對象的測試。圖l是 根據(jù)實施例的測試公共對象請求代理結(jié)構(gòu)的方法的流程圖。如圖l所示,該方法包4舌以下步艱《步驟S102,測試工具i殳置 編譯選項,以選定^皮測對象的待編譯的接口定義語言文件;步駛《 S104,測試工具對選定的接口定義語言文件進行編譯,連接;波測對 象的命名服務(wù)并登陸被測對象;步驟S106,測試工具獲取被測對象 支持的管理者,并才艮據(jù)獲取的管理者將相應(yīng)的測試參lt輸入至^皮測 對象以對被測對象進行測試;步驟S108,結(jié)果校驗?zāi)K接收被測對 象的測試輸出,并將測試輸出與基準(zhǔn)數(shù)據(jù)進行比較以生成測試結(jié)果。其中,首先需要配置基于函凄t調(diào)用、測試^r入?yún)⑵鄔匕的CORBA 測試工具,這里所述的函數(shù)主要是用來調(diào)用IDL中已經(jīng)實現(xiàn)的功能, 這些函凄t在IDL中已經(jīng)預(yù)先定義好。此外,該方法步驟S102進一步包括配置測試工具的接口池, 并接口池的瀏覽器中設(shè)置編譯選項、接口定義語言文件及對接口定 義語言文件進4于編譯的編譯器。其中,在步驟S104中,測試工具登陸^皮測對象的處理具體為 測試工具向凈皮測對象車命入馬全i正信息;在被測對象才艮據(jù)專俞入的-瞼$正4言 息判斷—驗i正通過的情況下,測試工具登陸被測對象。此外,步驟S106中進一步包括測試工具對需要向被測對象 輸入的測試輸入進行參數(shù)化處理,獲得測試參數(shù);測試工具獲取的管理者得到管理者下的函數(shù),并調(diào)用函數(shù)執(zhí)行測試參凄t以對被測對 象進行測試。此外,在步驟S106中,在將測試參數(shù)輸入至被測對象之前, 進一步包括測試工具呈現(xiàn)獲取的^f皮測對象的管理者所支持的函凄t 的接口定義語言的結(jié)構(gòu)格式。在上述處理當(dāng)中,需要獲取被測對象的所有支持的管理者及其對應(yīng)方法,將測試車ir入以參it化形式進行遍歷測試;其中,每個函數(shù)中都包含若干輸入?yún)?shù),每個參數(shù)可能有若干類型,要遍歷每個 參數(shù)的每種類型。其中,管理者是IDL中定義的一類方法的集合, IDL中定義了大約15個管理者,每個管理者包含若干函數(shù);并且, 在連4妾CORBA后,先要獲取管理者,然后才能調(diào)用管理者下乂t應(yīng) 的一些函凄丈。上述的基準(zhǔn)數(shù)據(jù)是指已確認為正確的輸出數(shù)據(jù),作為結(jié)果4交-驗 模塊的校驗標(biāo)準(zhǔn);結(jié)果校驗?zāi)K具有自動校驗功能,根據(jù)基準(zhǔn)凄t據(jù) 判斷所捕獲的輸出#t據(jù)的準(zhǔn)確性,進而作為4皮觀'J系統(tǒng)的觀'J試結(jié)果。在實際應(yīng)用當(dāng)中,為了實現(xiàn)上述方法,可以4荅建圖2所示的測 試系統(tǒng)。如圖2所示,通過CORBA測試工具201對被測CORBA系統(tǒng) 202進行系統(tǒng)測試,其中,測試的過程包括測試測試輸入及函凄t調(diào) 用;結(jié)果校驗?zāi)K203捕獲被測CORBA系統(tǒng)的測試輸出,并將本 次測試輸出與基準(zhǔn)數(shù)據(jù)204進行對比校驗,根據(jù)校驗結(jié)果生成測試 結(jié)果205。上述的CORBA測試工具201可以通過C+十等程序設(shè)計i吾言實 現(xiàn),其內(nèi)部結(jié)構(gòu)在圖3中進行詳細分析;結(jié)果4交驗才莫塊203可以通 過C+十等程序設(shè)計語言或SQA等腳本控制語言實現(xiàn)其對比校驗以及結(jié)果輸出功能;基準(zhǔn)數(shù)據(jù)204作為結(jié)果校驗?zāi)K203的判斷依據(jù), 可以采用Excel凄t據(jù)表格或XML文件進行維護。圖3是本實施例優(yōu)選測試/>共對象請求代理結(jié)構(gòu)的方法;充禾呈 圖。下面,將結(jié)合圖3對本實施例的一個優(yōu)選實施例的技術(shù)方案的 處理過程進行詳細的說明。包括如下步驟步驟301,配置^皮測CORBA軟件。一4殳的CORBA軟件在啟 動前都需要配置必要的啟動文件,以確保CORBA軟^牛能夠正常啟 動;步驟302,啟動被測CORBA 4欠件,通過步驟301來正常啟動 -故測CORBA壽欠件,并且,步驟301和步驟302屬于凈皮測系統(tǒng)的玉不 境搭建部分;步驟303,啟動CORBA測i式工具。啟動CORBA測試工具前 需要完成兩個才喿作創(chuàng)建CORBA 4妾口池(Create CORBA Interface Repository )和指定需要連接的命名服務(wù),接著正常啟動CORBA測 試工具;步驟304,配置CORBA測試工具,該步驟主要包括在CORBA 接口池瀏覽器中設(shè)置IDL編譯選項,編譯選項指定編譯器及待編i, 的IDL文件;步驟305,編譯IDL文件,在步驟304的基礎(chǔ)上,通過CORBA 測試工具編譯^皮測CORBA軟件^是供的IDL文件;步驟306,登錄CORBA專欠件。通過命名服務(wù)信息,調(diào)用 geffiMSSession ()方法,輸入用戶名和密碼以及相應(yīng)的IOR (即, 上述的一驗^M言息),登錄^皮測試CORBA軟件;步驟307 ,獲取支持的管理者。登錄成功后,調(diào)用 getSupportManager ()方法,獲取#1測CORBA軟件系統(tǒng)支持的所 有管理者信息;步驟308,獲取每個管理者對應(yīng)的方法。根據(jù)某一管理者信息, 調(diào)用getManager ()方法,獲取該管理者下支持的所有方法;步驟309,輸入相關(guān)參數(shù)執(zhí)4于測試,通過步驟308,測試工具 界面呈現(xiàn)相應(yīng)方法的IDL定義的結(jié)構(gòu)格式,將測試輸入?yún)?shù)化,將 符合測試用例要求的參凄t床存,通過函數(shù)調(diào)用執(zhí)4亍遍歷所有參凄史的 系纟克測i式;步驟310,驗證輸出測試結(jié)果。測試工具捕獲被測試CORBA 系統(tǒng)的測試輸出,即,步驟309中執(zhí)行測試的輸出結(jié)果,并將該結(jié) 果按照結(jié)果校驗?zāi)K203要求的格式輸出。裝置實施例在本實施例中,提供了 一種測試公共對象請求代理結(jié)構(gòu)的測試 工具。圖4是根據(jù)本實施例的測試公共對象請求代理結(jié)構(gòu)裝置框圖。 如圖4所示,該測試工具包括驅(qū)動模塊402,用于設(shè)置編譯選項、 對選定的接口定義語言文件進行編譯、連接被測對象的命名服務(wù)、 以及登陸被測對象;呈現(xiàn)模塊404,用于獲取被測對象所支持的管 理者及管理者支持的函數(shù)、呈現(xiàn)函數(shù)的接口定義語言的結(jié)構(gòu)格式、 以及確定函數(shù)的測試參數(shù)輸入格式;執(zhí)行模塊406,用于讀取flT入 的測試參數(shù)并調(diào)用相應(yīng)函數(shù)、獲取調(diào)用結(jié)果。此外,驅(qū)動才莫塊402能夠在預(yù)i殳置的測試工具的4妄口池的瀏覽 器中i殳置編i奪選項、并選定接口定義語言文件及對接口定義語言文 件進行編譯的編譯器。其中,驅(qū)動模塊402向被測對象輸入驗證信息;在被測對象才艮 據(jù)輸入的驗證信息判斷驗證通過的情況下,驅(qū)動才莫塊402登陸凈皮測 對象。圖5是才艮據(jù)實施例的測試工具內(nèi)部功能結(jié)構(gòu)示意圖。如圖5所 示,CORBA測試工具包含三個層面驅(qū)動層501、呈現(xiàn)層502、和 執(zhí)行層503。上述驅(qū)動才莫塊用于執(zhí)行驅(qū)動層501中的處理,上述呈 現(xiàn)模塊用于執(zhí)行呈現(xiàn)層502中的處理,上述執(zhí)行模塊用于執(zhí)行執(zhí)行 層503中的處理。其中,驅(qū)動層501的功能包4舌i殳置測^式工具編i奪選項(目的 是指定編i奪器和編譯方式,使測試工具能夠正確編譯IDL文件)、 編譯被測試系統(tǒng)提供的IDL文件、連接被測試系統(tǒng)的命名服務(wù)(先 連接^皮測系統(tǒng)的命名服務(wù),后連4妄CORBA,及一皮測系統(tǒng),進而測 試-故測系統(tǒng)功能實現(xiàn)的正確與否)、和登錄被測試系統(tǒng)四個功能,其 中,設(shè)置編譯選項和編譯IDL文件可以選擇Jacorb,這是業(yè)界比4交 成熟的IDL編i,器。如果CORBA已經(jīng)啟動,通過IP和端口信息即 可連4妄命名月艮務(wù)。成功連4妄命名服務(wù)后,可以通過調(diào)用 ge伍MSSession ()函凄t登錄尋皮測-逸系統(tǒng)。其中,呈現(xiàn)層502的功能包括根據(jù)獲得的命名服務(wù)信息獲取 支持的管理者信息、根據(jù)所獲得的管理者信息獲取該管理者所支持 的函數(shù)信息、根據(jù)IDL定義的結(jié)構(gòu)呈現(xiàn)所獲取的函數(shù)結(jié)構(gòu)信息以及 根據(jù)呈現(xiàn)的函數(shù)結(jié)構(gòu)信息確定所支持的參數(shù)格式信息;執(zhí)行層503 的功能包括讀取相應(yīng)函數(shù)的輸入?yún)?shù)、執(zhí)行函數(shù)調(diào)用操作、返回 函凄t調(diào)用結(jié)果、和輸出返回結(jié)果。要實現(xiàn)這個功能,可以調(diào)用 getSupportManager ()方法,獲取凈皮測CORBA軟件系統(tǒng)支持的所 有管理者信息;才艮據(jù)某一管理者信息,調(diào)用getManager ()方法, 獲取該管理者下支持的所有方法。該測試工具是可以用任何一種編 程語言(例如Javascript、 C十+等)來實現(xiàn)一個圖形用戶界面(GUI),GUI讀取已編i奪過的IDL信息,將IDL中定義的函數(shù)的輸入、l命出 參數(shù)打印出來。綜上所述,借助于本發(fā)明的技術(shù)方案,能夠通過IDL定義方法 遍歷的呈現(xiàn)方式實現(xiàn)接口的自動化測試,從而有效提高了測試凌丈率 和測試覆蓋率、降低了測試及管理成本;并且,通過根據(jù)IDL的定 義將函數(shù)結(jié)構(gòu)呈現(xiàn)給測試人員能夠使得測試更加直觀;此外,由于 參凄t具有》務(wù)改靈活的特點,能夠^吏測試更加靈活可配。以上所述僅為本發(fā)明的優(yōu)選實施例而已,并不用于限制本發(fā)明, 對于本領(lǐng)域的技術(shù)人員來說,本發(fā)明可以有各種更改和變化。凡在 本發(fā)明的精神和原則之內(nèi),所作的任何修改、等同替換、改進等, 均應(yīng)包含在本發(fā)明的保護范圍之內(nèi)。
權(quán)利要求
1.一種測試公共對象請求代理結(jié)構(gòu)的方法,用于通過測試工具、結(jié)果校驗?zāi)K實現(xiàn)對被測對象的測試,其特征在于,所述方法包括步驟S102,所述測試工具設(shè)置編譯選項,以選定所述被測對象的待編譯的接口定義語言文件;步驟S104,所述測試工具對選定的所述接口定義語言文件進行編譯,連接所述被測對象的命名服務(wù)并登陸所述被測對象;步驟S106,所述測試工具獲取所述被測對象支持的管理者,并根據(jù)獲取的所述管理者將相應(yīng)的測試參數(shù)輸入至所述被測對象以對所述被測對象進行測試;步驟S108,所述結(jié)果校驗?zāi)K接收所述被測對象的測試輸出,并將所述測試輸出與基準(zhǔn)數(shù)據(jù)進行比較以生成測試結(jié)果。
2. 根據(jù)權(quán)利要求1所述的方法,其特征在于,所述步驟S102進 一步包4舌配置所述測試工具的接口池,并在所述接口池的瀏覽器中 設(shè)置所述編譯選項、所述接口定義語言文件及對所述接口定義 語言文件進4于編譯的編i,器。
3. 根據(jù)權(quán)利要求1所述的方法,其特征在于,在所述步驟S104 中,所述測試工具登陸所述被測對象的處理具體為所述測試工具向所述^皮測對象$俞入-驗i正信息;在所述被測對象根據(jù)輸入的所述驗證信息判斷驗證通過 的情況下,所述測試工具登陸所述^皮測對象。
4. 根據(jù)權(quán)利要求1所述的方法,其特征在于,在所述步驟S106 中,進一步包4舌所述測試工具對需要向所述被測對象輸入的測試輸入進 行參ft化處理,獲得所述測試參數(shù);所述測試工具獲取的所述管理者得到所述管理者下的函 數(shù),并調(diào)用所述函數(shù)執(zhí)行所述測試參數(shù)以對所述被測對象進行 測試。
5. 根據(jù)權(quán)利要求1所述的方法,其特征在于,在所述步驟S106 中,在將所述測試參數(shù)輸入至所述被測對象之前,進一步包括所述測試工具呈現(xiàn)獲取的所述^皮測對象的管理者所支持 的函數(shù)的接口定義語言的結(jié)構(gòu)格式。
6. —種測試/>共對象〗青求 理結(jié)構(gòu)的測試工具,其特;f正在于,所 述測試工具包括驅(qū)動模塊,用于設(shè)置編譯選項、對選定的所述接口定義語 言文件進行編譯、連接所述被測對象的命名服務(wù)、以及登陸所 述4皮測對象;呈現(xiàn)模塊,用于獲取所述被測對象所支持的管理者及所述 管理者支持的函數(shù)、呈現(xiàn)所述函數(shù)的接口定義語言的結(jié)構(gòu)格 式、以及確定所述函凄t的測試參lt輸入格式;執(zhí)行才莫塊,用于讀取輸入的測試參數(shù)并調(diào)用相應(yīng)函數(shù)、獲 取調(diào)用結(jié)果。
7. 根據(jù)權(quán)利要求6所述的測試工具,其特征在于,所述驅(qū)動模塊 在預(yù)i殳置的所述測試工具的4妾口池的瀏覽器中i殳置所述編譯 選項、并選定所述接口定義語言文件及對所述接口定義語言文 件進行編譯的編譯器。
8. 根據(jù)權(quán)利要求6所述的測試工具,其特征在于,所述驅(qū)動模塊 向所述被測對象輸入驗證信息,在所述被測對象根據(jù)輸入的所 述驗證信息判斷驗證通過的情況下,所述驅(qū)動才莫塊登陸所述被 測對象。
全文摘要
本發(fā)明公開了一種測試公共對象請求代理結(jié)構(gòu)的方法,包括步驟S102,測試工具設(shè)置編譯選項,以選定被測對象的待編譯的接口定義語言文件;步驟S104,測試工具對選定的接口定義語言文件進行編譯,連接被測對象的命名服務(wù)并登陸被測對象;步驟S106,測試工具獲取被測對象支持的管理者,并根據(jù)獲取的管理者將相應(yīng)的測試參數(shù)輸入至被測對象以對被測對象進行測試;步驟S108,結(jié)果校驗?zāi)K接收被測對象的測試輸出,并將測試輸出與基準(zhǔn)數(shù)據(jù)進行比較以生成測試結(jié)果。此外,本發(fā)明還公開了一種測試公共對象請求代理結(jié)構(gòu)的測試工具。通過本發(fā)明的技術(shù)方案,能夠有效提高測試效率和測試覆蓋率、降低測試及管理成本、使測試更加直觀及靈活可配。
文檔編號G06F9/45GK101251824SQ20081008808
公開日2008年8月27日 申請日期2008年3月31日 優(yōu)先權(quán)日2008年3月31日
發(fā)明者徐振良 申請人:中興通訊股份有限公司
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1