專利名稱:測試java api單元組件的方法及裝置的制作方法
技術領域:
本發(fā)明涉及JAVA系統(tǒng)測試領域,特別是涉及一種測試JAVA API單元組件的方法
及裝置。
背景技術:
隨著JAVA技術的不斷推廣和完善,JAVA應用的使用也越來越廣泛,為了滿足不同行業(yè)的不同需求,需要通過技術手段來滿足不同的功能。API (Application ProgrammingInterface,應用編程接口)作為JAVA系統(tǒng)的重要組成部分,也是JAVA系統(tǒng)測試過程中必不可少的一個環(huán)節(jié)。在實際的開發(fā)過程中,開發(fā)人員通過創(chuàng)建API來實現(xiàn)各個組件的功能,以此來滿足不同行業(yè)的不同需求。
API測試用于驗證組成軟件的單個方法是否正確。API測試又稱為單元測試、模塊測試、組件測試或者元件測試,在JAVA系統(tǒng)測試過程中,首先必須確定JAVA系統(tǒng)中每個單獨的模塊工作正常,否則,這個JAVA系統(tǒng)整體不可能是正確的,API測試對于任何重要的軟件系統(tǒng)來說都是必不可少的。在產品發(fā)布前,相關的測試工作是確保產品質量的重要因素,測試人員需要面對各種復雜的測試環(huán)境,以滿足不同的用戶需求。在現(xiàn)有的測試過程當中,不僅有符合GP (Globle Platform,全球化平臺)規(guī)范的標準API,還有一種應用開發(fā)人員為實現(xiàn)指定功能而實現(xiàn)的自定義API,這兩種API都需要根據API說明來展開測試,如果API的功能有修改或增加時,即對應的單元組件有更新時,需要重新開發(fā)相應的測試平臺,這無疑增加了測試人員的工作強度,并且要求測試人員需要具備專業(yè)的腳本編程知識,開發(fā)和維護成本較高。
發(fā)明內容
本發(fā)明的目的是為了克服上述背景技術的不足,提供一種測試JAVA API單元組件的方法及裝置,能夠降低測試人員的工作強度,且不要求測試人員具備很專業(yè)的腳本編程知識,減少測試過程中的開發(fā)和維護成本。本發(fā)明提供的測試JAVA API單元組件的方法及裝置,包括以下步驟SI、根據待測的JAVA API單元組件,創(chuàng)建API測試庫,所述API測試庫包括待測的JAVA API單元組件、待測的JAVA API單元組件變量信息、測試API私有指令、測試API私有指令返回結果;S2、使用本地化編譯工具編譯API測試庫,生成測試用的應用Applet ;S3、根據測試項,調用應用Applet,通過本地測試工具生成測試腳本;S4、執(zhí)行所述測試腳本;S5、測試完畢,刪除測試應用Applet,恢復測試環(huán)境。在上述技術方案中,步驟SI中創(chuàng)建API測試庫以后還包括以下步驟所述API的測試項有更新時,對應更新測試API私有指令。在上述技術方案中,步驟S2中所述應用Applet符合GP2. 2. I的規(guī)范所定義的范圍。在上述技術方案中,步驟S4中測試API私有指令響應的數(shù)據必須滿足測試案例中的預期結果。在上述技術方案中,所述待測的JAVA API單元組件為系統(tǒng)時間設置函數(shù)時,檢測所述系統(tǒng)時間設置函數(shù)的輸入/輸出參數(shù)是否正確、功能是否滿足要求、異常情況是否被正確處理,具體包括以下步驟步驟101、將所述系統(tǒng)時間設置函數(shù)的開發(fā)代碼包拷貝到編譯工具中對應的目錄下,供后續(xù)編寫應用Applet調用,創(chuàng)建API測試庫,包括以下信息(I) 一個用于存放系統(tǒng)時間的數(shù)組;
(2)測試案例個數(shù);(3)調用所述系統(tǒng)時間設置函數(shù)、讀取數(shù)組中存放的系統(tǒng)時間的第一私有指令、第二私有指令、第三私有指令,其中所述第一私有指令,用于提示輸入時間,并通過本地化測試工具顯示出來;所述第二私有指令,用于驗證獲取的當前系統(tǒng)時間是否滿足要求;所述第三私有指令,用于檢查當?shù)谝凰接兄噶钶斎氲臅r間格式異常時,系統(tǒng)有沒有對該異常正確處理;步驟102、使用本地化編譯工具對創(chuàng)建的API測試庫進行編譯,并生成測試用的應用 Applet ;步驟103、調用應用Applet :根據測試案例,調用應用Applet中的第一私有指令、第二私有指令、第三私有指令,并通過本地測試工具生成測試腳本;步驟104、執(zhí)行測試腳本接受私有指令輸出,并對各私有指令返回的實際結果同預期結果進行對比,依次判斷所述系統(tǒng)時間設置函數(shù)的功能是否滿足要求;步驟105、測試完畢,刪除測試應用Applet,恢復測試環(huán)境。本發(fā)明還提供一種測試JAVA API單元組件的裝置,包括API測試庫創(chuàng)建單元、API測試庫編譯單元、測試腳本生成單元、測試腳本執(zhí)行單元、測試環(huán)境恢復單元,其中所述API測試庫創(chuàng)建單元,用于根據待測的JAVA API單元組件,創(chuàng)建API測試庫,所述API測試庫包括待測的JAVA API單元組件、待測的JAVA API單元組件變量信息、測試API私有指令、測試API私有指令返回結果;所述API測試庫編譯單元,用于使用本地化編譯工具編譯API測試庫,生成測試用的應用Applet ;所述測試腳本生成單元,用于根據測試項,調用應用Applet,通過本地測試工具生成測試腳本,并將生成的測試腳本發(fā)送到測試腳本執(zhí)行單元;所述測試腳本執(zhí)行單元,用于收到測試腳本生成單元發(fā)來的測試腳本后,執(zhí)行所述測試腳本;所述測試環(huán)境恢復單元,用于測試完畢后,刪除測試應用Applet,恢復測試環(huán)境。在上述技術方案中,還包括判斷單元和測試API私有指令更新單元,其中所述判斷單元,用于判斷API的測試項是否有更新,如果判定API的測試項有更新,則生成測試API私有指令更新觸發(fā)信號,并將該測試API私有指令更新觸發(fā)信號發(fā)送到測試API私有指令更新單元;所述測試API私有指令更新單元,用于收到判斷單元發(fā)來的測試API私有指令更新觸發(fā)信號時,對應更新測試API私有指令。在上述技術方案中,所述API測試庫編譯單元生成的應用Applet必須符合GP2. 2. I的規(guī)范所定義的范圍。在上述技術方案中,所述測試腳本執(zhí)行單元執(zhí)行測試腳本的過程中,測試API私有指令響應的數(shù)據必須滿足測試案例中的預期結果。與現(xiàn)有技術相比,本發(fā)明的優(yōu)點如下本發(fā)明通過創(chuàng)建應用Applet,對測試系統(tǒng)中的JAVA API進行測試,測試人員測 試時,根據應用Applet中定義的私有指令編寫測試腳本,再由本地測試客戶端根據API解析測試腳本,并將解析后的API調用指令發(fā)送給測試系統(tǒng)而完成測試腳本的執(zhí)行工作。在編寫測試腳本時,不需要考慮API底層的功能實現(xiàn),根據測試項的需要,只需要調用應用Applet中對應的私有指令即可,再結合本地測試工具,能夠完全實現(xiàn)后期的測試自動化;API的功能有修改或增加時,無需開發(fā)相應的測試平臺,只需要對應用Applet進行維護,后期的腳本維護量少,降低測試人員的工作強度,且不需要具備很專業(yè)的腳本編程知識,減少測試過程中的開發(fā)和維護成本。
圖I是本發(fā)明實施例中測試JAVA API單元組件的方法流程圖。
具體實施例方式下面結合附圖及具體實施例對本發(fā)明作進一步的詳細描述。為了檢測JAVA API單元組件是否可靠,包括檢測API的輸入/輸出參數(shù)是否正確、API的功能是否滿足要求、API的異常情況是否被正確處理,本發(fā)明實施例提供一種測試JAVA API單元組件的方法,參見圖I所示,該方法包括以下步驟SI、根據待測的JAVA API單元組件,創(chuàng)建API測試庫,該API測試庫包括待測的JAVA API單元組件、待測的JAVA API單元組件變量信息、測試API私有指令、測試API私有指令返回結果^API的測試項有更新時,對應更新測試API私有指令;S2、使用本地化編譯工具編譯API測試庫,生成測試用的應用Applet,該應用Applet必須符合GP2. 2. I的規(guī)范所定義的范圍;S3、根據測試項,調用應用Applet,通過本地測試工具生成測試腳本;S4、執(zhí)行上述測試腳本,測試API私有指令響應的數(shù)據必須滿足測試案例中的預期結果;S5、測試完畢,刪除測試應用Applet,恢復測試環(huán)境。本發(fā)明實施例還提供一種測試JAVA API單元組件的裝置,包括API測試庫創(chuàng)建單元、判斷單元、測試API私有指令更新單元、API測試庫編譯單元、測試腳本生成單元、測試腳本執(zhí)行單元、測試環(huán)境恢復單元,其中API測試庫創(chuàng)建單元,用于根據待測的JAVA API單元組件,創(chuàng)建API測試庫,該API測試庫包括待測的JAVA API單元組件、待測的JAVA API單元組件變量信息、測試API私有指令、測試API私有指令返回結果;判斷單元,用于判斷API的測試項是否有更新,如果判定API的測試項有更新,則生成測試API私有指令更新觸發(fā)信號,并將該測試API私有指令更新觸發(fā)信號發(fā)送到測試API私有指令更新單元;測試API私有指令更新單元,用于收到判斷單元發(fā)來的測試API私有指令更新觸發(fā)信號時,對應更新測試API私有指令;API測試庫編譯單元,用于使用本地化編譯工具編譯API測試庫,生成測試用的應用Applet,該應用Applet必須符合GP2. 2. I的規(guī)范所定義的范圍; 測試腳本生成單元,用于根據測試項,調用應用Applet,通過本地測試工具生成測試腳本,并將生成的測試腳本發(fā)送到測試腳本執(zhí)行單元;測試腳本執(zhí)行單元,用于收到測試腳本生成單元發(fā)來的測試腳本后,執(zhí)行該測試腳本,測試API私有指令響應的數(shù)據必須滿足測試案例中的預期結果;測試環(huán)境恢復單元,用于測試完畢后,刪除測試應用Applet,恢復測試環(huán)境。下面以Time_SetCalendarTime (設置時間)函數(shù)為例進行說明。假設待測的JAVA API單元組件為系統(tǒng)時間設置函數(shù)(Time_SetCalendarTime函數(shù)),檢測該系統(tǒng)時間設置函數(shù)的輸入/輸出參數(shù)是否正確、功能是否滿足要求、異常情況是否被正確處理,具體包括如下步驟步驟101、將該系統(tǒng)時間設置函數(shù)的開發(fā)代碼包拷貝到編譯工具中對應的目錄下,供后續(xù)編寫應用Applet調用,創(chuàng)建API測試庫,包括以下信息( I) 一個用于存放系統(tǒng)時間的數(shù)組;(2)測試案例個數(shù);(3)調用該系統(tǒng)時間設置函數(shù)、讀取數(shù)組中存放的系統(tǒng)時間的第一私有指令、第二私有指令、第三私有指令,其中第一私有指令,用于提示輸入時間,并通過本地化測試工具顯示出來;第二私有指令,用于驗證獲取的當前系統(tǒng)時間是否滿足要求;第三私有指令,用于檢查當?shù)谝凰接兄噶钶斎氲臅r間格式異常時,系統(tǒng)有沒有對該異常正確處理;步驟102、使用本地化編譯工具對創(chuàng)建的API測試庫進行編譯,并生成測試用的應用 Applet ;步驟103、調用應用Applet :根據測試案例,調用應用Applet中的第一私有指令、第二私有指令、第三私有指令,并通過本地測試工具生成可以在本地測試工具中執(zhí)行的測試腳本;步驟104、執(zhí)行測試腳本接受私有指令輸出,并對各私有指令返回的實際結果同預期結果進行對比,依次判斷該系統(tǒng)時間設置函數(shù)的功能是否滿足要求;步驟105、測試完畢,刪除測試應用Applet,恢復測試環(huán)境。顯然,本領域的技術人員可以對本發(fā)明進行各種改動和變型而不脫離本發(fā)明的精神和范圍,倘若本發(fā)明的這些修改和變型屬于本發(fā)明權利要求及其等同技術的范圍之內,則本發(fā)明包含這些改動和變型在內。本說明書中未作詳細描述的內容屬于本領域專業(yè)技術人員公知的現(xiàn)有技術。
權利要求
1.一種測試JAVA API單元組件的方法,其特征在于,包括以下步驟 51、根據待測的JAVAAPI單元組件,創(chuàng)建API測試庫,所述API測試庫包括待測的JAVAAPI單元組件、待測的JAVA API單元組件變量信息、測試API私有指令、測試API私有指令返回結果; 52、使用本地化編譯工具編譯API測試庫,生成測試用的應用Applet; 53、根據測試項,調用應用Applet,通過本地測試工具生成測試腳本; 54、執(zhí)行所述測試腳本; 55、測試完畢,刪除測試應用Applet,恢復測試環(huán)境。
2.如權利要求I所述的測試JAVAAPI單元組件的方法,其特征在于步驟SI中創(chuàng)建API測試庫以后還包括以下步驟所述API的測試項有更新時,對應更新測試API私有指令。
3.如權利要求I所述的測試JAVAAPI單元組件的方法,其特征在于步驟S2中所述應用Applet符合GP2. 2. I的規(guī)范所定義的范圍。
4.如權利要求I所述的測試JAVAAPI單元組件的方法,其特征在于步驟S4中測試API私有指令響應的數(shù)據必須滿足測試案例中的預期結果。
5.如權利要求I至4中任一項所述的測試JAVAAPI單元組件的方法,其特征在于所述待測的JAVA API單元組件為系統(tǒng)時間設置函數(shù)時,檢測所述系統(tǒng)時間設置函數(shù)的輸入/輸出參數(shù)是否正確、功能是否滿足要求、異常情況是否被正確處理,具體包括以下步驟 步驟101、將所述系統(tǒng)時間設置函數(shù)的開發(fā)代碼包拷貝到編譯工具中對應的目錄下,供后續(xù)編寫應用Applet調用,創(chuàng)建API測試庫,包括以下信息 (1)一個用于存放系統(tǒng)時間的數(shù)組; (2)測試案例個數(shù); (3)調用所述系統(tǒng)時間設置函數(shù)、讀取數(shù)組中存放的系統(tǒng)時間的第一私有指令、第二私有指令、第三私有指令,其中 所述第一私有指令,用于提示輸入時間,并通過本地化測試工具顯示出來; 所述第二私有指令,用于驗證獲取的當前系統(tǒng)時間是否滿足要求; 所述第三私有指令,用于檢查當?shù)谝凰接兄噶钶斎氲臅r間格式異常時,系統(tǒng)有沒有對該異常正確處理; 步驟102、使用本地化編譯工具對創(chuàng)建的API測試庫進行編譯,并生成測試用的應用Applet ; 步驟103、調用應用Applet :根據測試案例,調用應用Applet中的第一私有指令、第二私有指令、第三私有指令,并通過本地測試工具生成測試腳本; 步驟104、執(zhí)行測試腳本接受私有指令輸出,并對各私有指令返回的實際結果同預期結果進行對比,依次判斷所述系統(tǒng)時間設置函數(shù)的功能是否滿足要求; 步驟105、測試完畢,刪除測試應用Applet,恢復測試環(huán)境。
6.一種測試JAVA API單元組件的裝置,其特征在于包括API測試庫創(chuàng)建單元、API測試庫編譯單元、測試腳本生成單元、測試腳本執(zhí)行單元、測試環(huán)境恢復單元,其中 所述API測試庫創(chuàng)建單元,用于根據待測的JAVA API單元組件,創(chuàng)建API測試庫,所述API測試庫包括待測的JAVA API單元組件、待測的JAVA API單元組件變量信息、測試API私有指令、測試API私有指令返回結果; 所述API測試庫編譯單元,用于使用本地化編譯工具編譯API測試庫,生成測試用的應用 Applet ; 所述測試腳本生成單元,用于根據測試項,調用應用Applet,通過本地測試工具生成測試腳本,并將生成的測試腳本發(fā)送到測試腳本執(zhí)行單元; 所述測試腳本執(zhí)行單元,用于收到測試腳本生成單元發(fā)來的測試腳本后,執(zhí)行所述測試腳本; 所述測試環(huán)境恢復單元,用于測試完畢后,刪除測試應用Applet,恢復測試環(huán)境。
7.如權利要求6所述的測試JAVAAPI單元組件的裝置,其特征在于還包括判斷單元和測試API私有指令更新單元,其中 所述判斷單元,用于判斷API的測試項是否有更新,如果判定API的測試項有更新,則生成測試API私有指令更新觸發(fā)信號,并將該測試API私有指令更新觸發(fā)信號發(fā)送到測試API私有指令更新單元; 所述測試API私有指令更新單元,用于收到判斷單元發(fā)來的測試API私有指令更新觸發(fā)信號時,對應更新測試API私有指令。
8.如權利要求6所述的測試JAVAAPI單元組件的裝置,其特征在于所述API測試庫編譯單元生成的應用Applet必須符合GP2. 2. I的規(guī)范所定義的范圍。
9.如權利要求6至8中任一項所述的測試JAVAAPI單元組件的裝置,其特征在于所述測試腳本執(zhí)行單元執(zhí)行測試腳本的過程中,測試API私有指令響應的數(shù)據必須滿足測試案例中的預期結果。
全文摘要
本發(fā)明公開了一種測試JAVA API單元組件的方法及裝置,涉及JAVA系統(tǒng)測試領域,該方法包括以下步驟根據待測的JAVA API單元組件,創(chuàng)建API測試庫,所述API測試庫包括待測的JAVA API單元組件、待測的JAVA API單元組件變量信息、測試API私有指令、測試API私有指令返回結果;使用本地化編譯工具編譯API測試庫,生成測試用的應用Applet;根據測試項,調用應用Applet,通過本地測試工具生成測試腳本;執(zhí)行測試腳本;測試完畢,刪除測試應用Applet,恢復測試環(huán)境。本發(fā)明能夠降低測試人員的工作強度,且不要求測試人員具備很專業(yè)的腳本編程知識,減少測試過程中的開發(fā)和維護成本。
文檔編號G06F11/36GK102968371SQ20121048933
公開日2013年3月13日 申請日期2012年11月26日 優(yōu)先權日2012年11月26日
發(fā)明者楊勛, 李曉俊 申請人:武漢天喻信息產業(yè)股份有限公司