專利名稱:軟件測(cè)試方法及其測(cè)試裝置的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及通信技術(shù)領(lǐng)域,特別涉及一種在iOS系統(tǒng)下進(jìn)行軟件測(cè)試的方法、以及一種實(shí)現(xiàn)該測(cè)試方法的裝置。
背景技術(shù):
近年來,移動(dòng)終端技術(shù)發(fā)展日新月異。以手機(jī)為典型代表的移動(dòng)終端在一定程度上體現(xiàn)了通信技術(shù)的發(fā)展,對(duì)手機(jī)而言,其從早期的GSM (Global System for Mobilecommunications,全球移動(dòng)通信系統(tǒng))、CDMA(Code Division Multiple Access,碼分多址),逐漸發(fā)展到目前正在使用的3G (3rd Generation,第三代移動(dòng)通信技術(shù)),并朝著蓄勢(shì)待發(fā)的第四代移動(dòng)通信網(wǎng)絡(luò)技術(shù)發(fā)展。通信技術(shù)的發(fā)展相應(yīng)地促進(jìn)了手機(jī)的推廣使用,手機(jī)的功能也不再局限于打電話,發(fā)短信,而是擴(kuò)展到手機(jī)拍照攝像、上網(wǎng)收發(fā)電子郵件等。為了檢測(cè)移動(dòng)終端的性能,為研發(fā)工作提供可靠數(shù)據(jù),現(xiàn)有技術(shù)需要對(duì)移動(dòng)終端進(jìn)行測(cè)試。移動(dòng)終端測(cè)試,一般是指軟件測(cè)試,傳統(tǒng)的軟件測(cè)試通常采用手動(dòng)人工測(cè)試方式。但是手工測(cè)試存在不少弊端,例如在資源沖突測(cè)試方面手動(dòng)測(cè)試精確度十分有限,另外,手動(dòng)測(cè)試還具有流程復(fù)雜、成本較高的弊端。另外,隨著移動(dòng)終端技術(shù)的發(fā)展,基于新的技術(shù)核心的移動(dòng)終端不斷涌現(xiàn),其中,配備iOS系統(tǒng)的移動(dòng)終端更是對(duì)軟件測(cè)試提出了更高的要求。iOS是由蘋果公司為iPhone(蘋果公司的一款智能手機(jī))開發(fā)的操作系統(tǒng)其是以Darwin (—個(gè)開放原始碼操作系統(tǒng))為基礎(chǔ)的一種操作系統(tǒng)。iOS系統(tǒng)架構(gòu)分為四個(gè)層次核心操作系統(tǒng)層(the Core OS layer),核心服務(wù)層(the Core Services layer),媒體層(the Media layer),可輕觸層(the CocoaTouch layer)?,F(xiàn)有技術(shù)中對(duì)配置有iOS系統(tǒng)的移動(dòng)終端中進(jìn)行測(cè)試目前只能手動(dòng)一次啟動(dòng)一個(gè)腳本進(jìn)行測(cè)試,對(duì)于測(cè)試結(jié)果只能在模擬器進(jìn)行查看,無法通過控制臺(tái)進(jìn)行查看。
發(fā)明內(nèi)容
本發(fā)明實(shí)施例提供一種軟件測(cè)試方法及其裝置,目的在于解決現(xiàn)有技術(shù)中對(duì)于iOS系統(tǒng)下的軟件無法進(jìn)行自動(dòng)測(cè)試的問題。所述軟件測(cè)試方法包括
在iOS系統(tǒng)下的UI自動(dòng)化測(cè)試工具中嵌入OCUnit測(cè)試框架;
根據(jù)所述iOS系統(tǒng)下的UI自動(dòng)化測(cè)試工具中預(yù)設(shè)的測(cè)試腳本配置與該測(cè)試腳本相應(yīng)的測(cè)試程序;
執(zhí)行所述測(cè)試程序,在所述OCUnit測(cè)試框架中執(zhí)行所述iOS系統(tǒng)下的UI自動(dòng)化測(cè)試工具中預(yù)設(shè)的測(cè)試腳本,并對(duì)相應(yīng)的軟件進(jìn)行測(cè)試。本發(fā)明實(shí)施例還進(jìn)一步提供一種實(shí)現(xiàn)上述測(cè)試方法的軟件測(cè)試裝置,包括
嵌入模塊,用于在iOS系統(tǒng)下的UI自動(dòng)化測(cè)試工具中嵌入OCUnit測(cè)試框架;配置模塊,用于根據(jù)所述ios系統(tǒng)下的n自動(dòng)化測(cè)試工具中預(yù)設(shè)的測(cè)試腳本配置相應(yīng)的測(cè)試程序;
執(zhí)行模塊,用于執(zhí)行所述配置模塊所配置的測(cè)試程序,并在所述嵌入模塊所嵌入的OCUnit測(cè)試框架中,執(zhí)行所述iOS系統(tǒng)下的n自動(dòng)化測(cè)試工具中預(yù)設(shè)的測(cè)試腳本,并對(duì)相應(yīng)的軟件進(jìn)行測(cè)試。與現(xiàn)有技術(shù)相比,本發(fā)明實(shí)施例所述的測(cè)試方法及測(cè)試裝置通過在iOS系統(tǒng)下的UI自動(dòng)化測(cè)試工具中嵌入OCUnit測(cè)試框架,并利用OCUnit測(cè)試框架自動(dòng)對(duì)iOS系統(tǒng)下的UI自動(dòng)化測(cè)試工具中所設(shè)置的腳本進(jìn)行調(diào)用,從而可利用ios系統(tǒng)下的n自動(dòng)化測(cè)試工具對(duì)軟件進(jìn)行自動(dòng)測(cè)試,避免了手動(dòng)人工測(cè)試,使得測(cè)試流程簡(jiǎn)單,成本降低,測(cè)試效率和測(cè)試精確度得到較佳提升。
圖I為本發(fā)明實(shí)施例提供的一種軟件測(cè)試方法的流程示意 圖2為一種運(yùn)用在圖I所示軟件測(cè)試方法中的目錄樹文件的結(jié)構(gòu) 圖3為本發(fā)明實(shí)施例提供的一種軟件測(cè)試裝置的結(jié)構(gòu)框架示意 圖4為圖3所示的軟件測(cè)試裝置內(nèi)所具有的嵌入模塊的結(jié)構(gòu)框架示意圖。
具體實(shí)施例方式請(qǐng)參閱圖1,本發(fā)明實(shí)施例提供一種軟件測(cè)試方法,其可用于在iOS系統(tǒng)下對(duì)軟件進(jìn)行測(cè)試,所述軟件測(cè)試方法具體包括步驟SlOf S103。本實(shí)施例中,圖I所示的測(cè)試方法可以在X-code場(chǎng)景中實(shí)現(xiàn)。需要指明的是,本實(shí)施例中具體實(shí)現(xiàn)場(chǎng)景并不局限于Xcode場(chǎng)景,其也可為其他能夠?qū)崿F(xiàn)相類似的技術(shù)操作流程的場(chǎng)景。步驟SlOl :在iOS系統(tǒng)下的UI自動(dòng)化測(cè)試工具中嵌入OCUnit測(cè)試框架,具體的,步驟SlOl包括子步驟(I) (3)
(I)在iOS系統(tǒng)下的UI自動(dòng)化測(cè)試工具中嵌入OCUnit測(cè)試框架。本實(shí)施例中,iOS系統(tǒng)下的n自動(dòng)化測(cè)試工具可以為FoneMonkey,OCUnit測(cè)試框架為蘋果公司提供的可以進(jìn)行單元測(cè)試的框架,具體可為SenTestingKit. framework框架。需要指明的是,F(xiàn)oneMonkey僅僅作為iOS系統(tǒng)下的n自動(dòng)化測(cè)試工具的一種示例,在實(shí)際應(yīng)用中,其他的測(cè)試工具也可以實(shí)現(xiàn)相類似的技術(shù)方案,并不局限于具體實(shí)施例。在實(shí)際的應(yīng)用場(chǎng)景中,上述的SenTestingKit. framework框架可以在硬盤的developer-1 ibrary-frameworks 文件夾里獲取到。對(duì)于X-code場(chǎng)景,本步驟的具體處理過程是在FoneMonkey中相應(yīng)的項(xiàng)目targets選項(xiàng)中添加OCUnit測(cè)試框架。通過子步驟(I)的處理,OCUnit測(cè)試框架與FoneMonkey實(shí)現(xiàn)了結(jié)構(gòu)上的嵌入。(2)修改iOS系統(tǒng)下的UI自動(dòng)化測(cè)試工具中的指引標(biāo)識(shí)。本實(shí)施例中,具體地,可進(jìn)一步修改FoneMonkey中other linker flags項(xiàng)目的值為-ObjC - all_load -IFoneMonkey - IFoneMonkeyOCUnit。該數(shù)值的提出是本發(fā)明實(shí)施例所給出的其中一種實(shí)施方式,可以理解的是,在其它變更實(shí)施方式中,也可利用其它能夠?qū)oneMonkey中的指引標(biāo)識(shí)指向嵌入的OCUnit測(cè)試框架(SenTestingKit. framework框架)的數(shù)值,并不局限于具體實(shí)施例。(3)在iOS系統(tǒng)下的UI自動(dòng)化測(cè)試工具中添加與OCUnit測(cè)試框架相適配的接口。具體地,在FoneMonkey的安裝目錄中獲取IibFoneMonkeyOCUnit API,作為與OCUnit測(cè)試框架相適配的接口,添加到FoneMonkey中。通過該子步驟實(shí)現(xiàn)FoneMonkey與OCUnit測(cè)試框架之間的邏輯接口的連接,使得FoneMonkey與OCUnit測(cè)試框架之間能夠?qū)崿F(xiàn)相應(yīng)的通信,為后續(xù)的軟件測(cè)試提供信息交
互通道。本實(shí)施例中,該步驟是FoneMonkey與OCUnit實(shí)現(xiàn)邏輯接口連接的適配過程,其中的API版本應(yīng)與之前步驟中的OCUnit和FoneMonkey中的版本相匹配,以保證接口連接的 正常實(shí)現(xiàn)。步驟S102 :根據(jù)iOS系統(tǒng)下的UI自動(dòng)化測(cè)試工具中預(yù)設(shè)的測(cè)試腳本配置與該測(cè)試腳本相應(yīng)的測(cè)試程序。在FoneMonkey中相應(yīng)的待測(cè)試項(xiàng)目(TEST OBJECT)的工程文件(Test Case)目錄里編寫一個(gè)程序,讓FoneMonkey的腳本自動(dòng)運(yùn)行起來,相應(yīng)的目錄樹文件結(jié)構(gòu)如圖2所
/Jn ο在上述的目錄中,定義了一個(gè)接口文件(TestCasel. h)和一個(gè)實(shí)現(xiàn)文件(TestCasel. m),其中,接口文件主要是用來實(shí)現(xiàn)OCUnie和FoneMonkey的結(jié)合調(diào)用,實(shí)現(xiàn)文件用來調(diào)用接口文件實(shí)現(xiàn)代碼功能,。為了更加清楚的說明本技術(shù)方案,以下分別給出了接口文件和實(shí)現(xiàn)文件的示例。其中,在本接口文件TestCasel.h中,主要引用了三個(gè)類(即如下所示的SenTestingKit/SenTestingKit. h、UIKit/UIKit. h 和 FoneMonkeyAPI. h),完成 FoneMonkey和OCUnit的邏輯連接配置,具體的示例如下
^define USE_APPLICATIONjJNTrjTEBT I
=Impoit 8eiiTe;'fmgKit SenTe ^Kii Ii-iiiilH; Lt UII Iit TtH lit Ii^iiiiiM*it riFoiieWoiike^-AItI Iirr
( 'uiteiiace Casel : SenTestC1ase {
I
i
end
進(jìn)一步的,實(shí)現(xiàn)文件TestCasel. m的示例如下
權(quán)利要求
1.一種軟件測(cè)試方法,其特征在于,包括 在iOS系統(tǒng)下的Π自動(dòng)化測(cè)試工具中嵌入OCUnit測(cè)試框架; 根據(jù)所述iOS系統(tǒng)下的UI自動(dòng)化測(cè)試工具中預(yù)設(shè)的測(cè)試腳本配置與該測(cè)試腳本相應(yīng)的測(cè)試程序; 執(zhí)行所述測(cè)試程序,在所述OCUnit測(cè)試框架中,執(zhí)行所述iOS系統(tǒng)下的UI自動(dòng)化測(cè)試工具中預(yù)設(shè)的測(cè)試腳本,并對(duì)相應(yīng)的軟件進(jìn)行測(cè)試。
2.如權(quán)利要求I所述的方法,其特征在于,所述方法運(yùn)用在X-code場(chǎng)景中,所述在iOS系統(tǒng)下的Π自動(dòng)化測(cè)試工具中嵌入OCUnit測(cè)試框架包括步驟 在所述iOS系統(tǒng)下的UI自動(dòng)化測(cè)試工具中嵌入OCUnit測(cè)試框架; 修改所述iOS系統(tǒng)下的UI自動(dòng)化測(cè)試工具中的指引標(biāo)識(shí); 在所述iOS系統(tǒng)下的UI自動(dòng)化測(cè)試工具中添加與所述OCUnit測(cè)試框架相適配的接□。
3.如權(quán)利要求2所述的方法,其特征在于,所述iOS系統(tǒng)下的Π自動(dòng)化測(cè)試工具為FoneMonkey,在所述iOS系統(tǒng)下的UI自動(dòng)化測(cè)試工具中嵌入OCUnit測(cè)試框架包括在所述FoneMonkey中相應(yīng)的項(xiàng)目targets選項(xiàng)中添加所述OCUnit測(cè)試框架。
4.如權(quán)利要求2所述的方法,其特征在于,所述iOS系統(tǒng)下的Π自動(dòng)化測(cè)試工具為FoneMonkey,所述修改所述iOS系統(tǒng)下的UI自動(dòng)化測(cè)試工具中的指引標(biāo)識(shí)包括 修改所述FoneMonkey中相應(yīng)的項(xiàng)目other linker flags選項(xiàng)的值。
5.如權(quán)利要求2所述的方法,其特征在于,所述iOS系統(tǒng)下的Π自動(dòng)化測(cè)試工具為FoneMonkey,所述在所述iOS系統(tǒng)下的UI自動(dòng)化測(cè)試工具中添加與所述OCUnit測(cè)試框架相適配的接口包括 在所述FoneMonkey的安裝目錄中獲取IibFoneMonkeyOCUnit API,作為與所述OCUnit測(cè)試框架相適配的接口,并將其添加到所述FoneMonkey中。
6.如權(quán)利要求I所述的方法,其特征在于,所述根據(jù)所述iOS系統(tǒng)下的Π自動(dòng)化測(cè)試工具中預(yù)設(shè)的測(cè)試腳本配置與該測(cè)試腳本相應(yīng)的測(cè)試程序包括 在待測(cè)試軟件所對(duì)應(yīng)的測(cè)試項(xiàng)目下建立接口文件和實(shí)現(xiàn)文件;所述實(shí)現(xiàn)文件中包含所述iOS系統(tǒng)下的UI自動(dòng)化測(cè)試工具中預(yù)設(shè)的測(cè)試腳本的信息。
7.一種軟件測(cè)試裝置,其特征在于,包括 嵌入模塊,用于在iOS系統(tǒng)下的Π自動(dòng)化測(cè)試工具中嵌入OCUnit測(cè)試框架; 配置模塊,用于根據(jù)所述iOS系統(tǒng)下的UI自動(dòng)化測(cè)試工具中預(yù)設(shè)的測(cè)試腳本配置與該測(cè)試腳本相應(yīng)的測(cè)試程序; 執(zhí)行模塊,用于執(zhí)行所述配置模塊所配置的測(cè)試程序,并在所述嵌入模塊所嵌入的OCUnit測(cè)試框架中,執(zhí)行所述iOS系統(tǒng)下的Π自動(dòng)化測(cè)試工具中預(yù)設(shè)的測(cè)試腳本,并對(duì)相應(yīng)的軟件進(jìn)行測(cè)試。
8.如權(quán)利要求7所述的裝置,其特征在于,所述嵌入模塊包括 嵌入子模塊,用于在X-code場(chǎng)景中,在所述iOS系統(tǒng)下的UI自動(dòng)化測(cè)試工具中嵌入OCUnit測(cè)試框架; 修改子模塊,用于修改所述iOS系統(tǒng)下的UI自動(dòng)化測(cè)試工具中的指引標(biāo)識(shí); 添加子模塊,用于在所述所述iOS系統(tǒng)下的UI自動(dòng)化測(cè)試工具中添加與所述OCUnit測(cè)試框架相適配的接口。
9.如權(quán)利要求8所述的裝置,其特征在于,所述裝置運(yùn)用在在X-code場(chǎng)景中,所述iOS系統(tǒng)下的UI自動(dòng)化測(cè)試工具為FoneMonkey,所述嵌入子模塊用于在所述FoneMonkey中相應(yīng)的項(xiàng)目targets選項(xiàng)中添加所述OCUnit測(cè)試框架,所述修改子模塊用于修改所述FoneMonkey中相應(yīng)的項(xiàng)目other linker flags選項(xiàng)的值,所述添加子模塊用于在所述FoneMonkey的安裝目錄中獲取IibFoneMonkeyOCUnit API,作為與所述OCUnit測(cè)試框架相適配的接口,并將其添加到所述FoneMonkey中。
10.如權(quán)利要求7所述的裝置,其特征在于,所述配置模塊用于在待測(cè)試軟件所對(duì)應(yīng)的測(cè)試項(xiàng)目下建立接口文件和實(shí)現(xiàn)文件,所述實(shí)現(xiàn)文件中包含所述iOS系統(tǒng)下的Π自動(dòng)化測(cè)試工具中預(yù)設(shè)的測(cè)試腳本的信息。
全文摘要
本發(fā)明實(shí)施例涉及一種軟件測(cè)試方法,以及一種實(shí)現(xiàn)該測(cè)試方法的軟件測(cè)試裝置,所述測(cè)試方法及測(cè)試裝置通過在iOS系統(tǒng)下的UI自動(dòng)化測(cè)試工具中嵌入OCUnit測(cè)試框架,并利用OCUnit測(cè)試框架自動(dòng)對(duì)iOS系統(tǒng)下的UI自動(dòng)化測(cè)試工具中所設(shè)置的腳本進(jìn)行調(diào)用,從而可利用iOS系統(tǒng)下的UI自動(dòng)化測(cè)試工具對(duì)軟件進(jìn)行自動(dòng)測(cè)試,避免了手動(dòng)人工測(cè)試,使得測(cè)試流程簡(jiǎn)單,成本降低,測(cè)試效率和測(cè)試精確度得到較佳提升。
文檔編號(hào)G06F11/36GK102819484SQ20111015238
公開日2012年12月12日 申請(qǐng)日期2011年6月8日 優(yōu)先權(quán)日2011年6月8日
發(fā)明者廖志, 李天暢, 李曉波, 陳力 申請(qǐng)人:騰訊科技(深圳)有限公司