軟件測試方法及裝置的制造方法
【技術(shù)領(lǐng)域】
[0001]本申請涉及軟件測試技術(shù)領(lǐng)域,特別是涉及一種軟件測試方法及裝置。
【背景技術(shù)】
[0002]隨著技術(shù)的不斷深入發(fā)展,移動終端正在從簡單的通話工具變?yōu)橐粋€綜合信息處理平臺。這也給移動終端增加了更加寬廣的發(fā)展空間。
[0003]隨著智能手機等移動終端設(shè)備的普及,人們逐漸習(xí)慣了使用應(yīng)用客戶端上網(wǎng)的方式,而目前國內(nèi)各大電商,均擁有了自己的應(yīng)用客戶端,這標(biāo)志著,應(yīng)用客戶端的商業(yè)使用,已經(jīng)開始初露鋒芒。
[0004]現(xiàn)有技術(shù)中,在對應(yīng)用軟件進行測試時,一般通過人工完成,工作量異常繁重。因此,現(xiàn)有技術(shù)中應(yīng)用軟件的測試方法存在著效率低。
【發(fā)明內(nèi)容】
[0005]本申請實施例解決的是如何實現(xiàn)軟件的自動測試,提高軟件測試的效率。
[0006]為解決上述問題,本申請實施例提供了一種軟件測試方法,所述方法包括:
[0007]獲取測試案例;
[0008]啟動待測試軟件,通過所述待測試軟件的用戶界面組接收所述測試案例傳遞的測試參數(shù),驅(qū)動待測試軟件進行測試,并獲取所述待測試軟件對于所接收的測試參數(shù)的處理結(jié)果,所述用戶界面組包括兩個以上的用戶界面,所述用戶界面之間具有預(yù)設(shè)的流轉(zhuǎn)關(guān)系;
[0009]根據(jù)所述處理結(jié)果,分析得到測試結(jié)果。
[0010]可選地,所述待測試軟件為應(yīng)用軟件。
[0011]可選地,所述啟動待測試軟件包括:采用反射機制啟動所述待測試軟件。
[0012]可選地,所述啟動待測試軟件,并通過所述待測試軟件的用戶界面接收所述測試案例傳遞的測試參數(shù),驅(qū)動待測試軟件進行測試,獲取所述待測試軟件對于所接收的測試參數(shù)的處理結(jié)果,包括:
[0013]啟動所述待測試軟件的用戶界面接收測試案例發(fā)送的測試參數(shù);
[0014]獲取所述待測試軟件對于所述用戶界面接收的測試參數(shù)的執(zhí)行結(jié)果;
[0015]判斷所述待測試軟件對于所述用戶界面接收的測試參數(shù)的執(zhí)行結(jié)果是否滿足預(yù)設(shè)的條件;
[0016]當(dāng)確定所述執(zhí)行結(jié)果滿足預(yù)設(shè)的條件時,啟動所述待測試軟件的下一用戶界面接收所述測試案例發(fā)送的測試參數(shù),并執(zhí)行獲取所述待測試軟件對于所述下一用戶界面接收的測試參數(shù)的執(zhí)行結(jié)果,判斷所述待測試軟件對于所述下一用戶界面接收的測試參數(shù)的執(zhí)行結(jié)果是否滿足預(yù)設(shè)的條件的操作,直至遍歷所述用戶界面組中的所有用戶界面。
[0017]可選地,所述判斷所述待測試軟件對于所述用戶界面接收的測試參數(shù)的執(zhí)行結(jié)果是否滿足預(yù)設(shè)的條件包括:通過消息調(diào)用相應(yīng)的處理類,判斷所述待測試軟件對于所述用戶界面接收的測試參數(shù)的執(zhí)行結(jié)果是否滿足預(yù)設(shè)的條件。
[0018]可選地,所述啟動待測試軟件,并通過所述待測試軟件的用戶界面接收所述測試案例傳遞的測試參數(shù),驅(qū)動待測試軟件進行測試,獲取所述待測試軟件對于所接收的測試參數(shù)的執(zhí)行結(jié)果,還包括:當(dāng)確定所述執(zhí)行結(jié)果不滿足預(yù)設(shè)的條件時,發(fā)布錯誤提示信息。
[0019]本申請實施例還提供了一種軟件測試裝置,所述裝置包括:
[0020]獲取單元,適于獲取測試案例;
[0021]測試單元,適于啟動待測試軟件,通過所述待測試軟件的用戶界面組接收所述測試案例傳遞的測試參數(shù),驅(qū)動待測試軟件進行測試,并獲取所述待測試軟件對于所接收的測試參數(shù)的處理結(jié)果,所述用戶界面組包括兩個以上的用戶界面,所述用戶界面之間具有預(yù)設(shè)的流轉(zhuǎn)關(guān)系;
[0022]分析單元,適于根據(jù)所述處理結(jié)果,分析得到測試結(jié)果。
[0023]可選地,所述待測試軟件為應(yīng)用軟件。
[0024]可選地,所述測試單元適于采用反射機制啟動所述待測試軟件。
[0025]可選地,所述測試單元包括:
[0026]啟動子單元,適于啟動所述待測試軟件的用戶界面接收測試案例發(fā)送的測試參數(shù);
[0027]獲取子單元,適于獲取所述待測試軟件對于所述用戶界面接收的測試參數(shù)的執(zhí)行結(jié)果;
[0028]判斷子單元,適于通過消息調(diào)用相應(yīng)的處理類,判斷所述待測試軟件對于所述用戶界面接收的測試參數(shù)的執(zhí)行結(jié)果是否滿足預(yù)設(shè)的條件。
[0029]測試子單元,當(dāng)確定所述執(zhí)行結(jié)果滿足預(yù)設(shè)的條件時,啟動所述待測試軟件的下一用戶界面接收所述測試案例發(fā)送的測試參數(shù),并執(zhí)行獲取所述待測試軟件對于所述下一用戶界面接收的測試參數(shù)的執(zhí)行結(jié)果,判斷所述待測試軟件對于所述用戶界面接收的測試參數(shù)的執(zhí)行結(jié)果是否滿足預(yù)設(shè)的條件的操作,直至遍歷所述用戶界面組中的所有用戶界面。
[0030]可選地,所述判斷子單元適于通過消息調(diào)用相應(yīng)的處理類,判斷所述待測試軟件對于所述用戶界面接收的測試參數(shù)的執(zhí)行結(jié)果是否滿足預(yù)設(shè)的條件。
[0031]可選地,所述測試單元還包括:提示子單元,適于當(dāng)確定所述執(zhí)行結(jié)果不滿足預(yù)設(shè)的條件時,發(fā)布錯誤提示信息。
[0032]與現(xiàn)有技術(shù)相比,本申請的技術(shù)方案具有以下的優(yōu)點:
[0033]通過待測試軟件的用戶界面組的用戶界面接收測試案例傳遞的測試參數(shù),由于所述用戶組中的用戶界面具有預(yù)設(shè)的流轉(zhuǎn)關(guān)系,可以在滿足預(yù)設(shè)的條件時,自動啟動所述用戶界面組中相應(yīng)的用戶界面接收測試案例傳遞的測試參數(shù),因此,可以實現(xiàn)軟件的自動化測試,提高軟件測試的效率。
【附圖說明】
[0034]圖1是本申請實施例中的一種軟件測試方法的流程圖;
[0035]圖2是本申請實施例中的另一種軟件測試方法的流程圖;
[0036]圖3是本申請實施例中的一種軟件測試裝置的結(jié)構(gòu)示意圖;
[0037]圖4是本申請實施例中的一種的測試單元的結(jié)構(gòu)示意圖。
【具體實施方式】
[0038]在本申請一個典型的配置中,終端、服務(wù)網(wǎng)絡(luò)的設(shè)備和可信方均包括一個或多個處理器(CPU)、輸入/輸出接口、網(wǎng)絡(luò)接口和內(nèi)存。
[0039]內(nèi)存可能包括計算機可讀介質(zhì)中的非永久性存儲器,隨機存取存儲器(RAM)和/或非易失性內(nèi)存等形式,如只讀存儲器(ROM)或閃存(flash RAM)。內(nèi)存是計算機可讀介質(zhì)的示例。
[0040]計算機可讀介質(zhì)包括永久性和非永久性、可移動和非可移動媒體可以由任何方法或技術(shù)來實現(xiàn)信息存儲。信息可以是計算機可讀指令、數(shù)據(jù)結(jié)構(gòu)、程序的子單元或其他數(shù)據(jù)。計算機的存儲介質(zhì)的例子包括,但不限于相變內(nèi)存(PRAM)、靜態(tài)隨機存取存儲器(SRAM)、動態(tài)隨機存取存儲器(DRAM)、其他類型的隨機存取存儲器(RAM)、只讀存儲器(ROM)、電可擦除可編程只讀存儲器(EEPROM)、快閃記憶體或其他內(nèi)存技術(shù)、只讀光盤只讀存儲器(CD-ROM)、數(shù)字多功能光盤(DVD)或其他光學(xué)存儲、磁盒式磁帶,磁帶磁磁盤存儲或其他磁性存儲設(shè)備或任何其他非傳輸介質(zhì),可用于存儲可以被計算設(shè)備訪問的信息。按照本文中的界定,計算機可讀介質(zhì)不包括非暫存電腦可讀媒體(transitory media),如調(diào)制的數(shù)據(jù)信號和載波。
[0041]為解決現(xiàn)有技術(shù)中存在的上述問題,本申請實施例采用的技術(shù)方案通過待測試軟件的用戶界面組的用戶界面接收測試案例傳遞的測試參數(shù),由于所述用戶組中的用戶界面具有預(yù)設(shè)的流轉(zhuǎn)關(guān)系,可以在滿足預(yù)設(shè)的條件時,自動啟動所述用戶界面組中相應(yīng)的用戶界面接收測試案例傳遞的測試參數(shù),因此,可以實現(xiàn)軟件的自動化測試,提高軟件測試的效率。
[0042]為使本申請的上述目的、特征和優(yōu)點能夠更為明顯易懂,下面結(jié)合附圖對本申請的具體實施例做詳細的說明。
[0043]圖1示出了本申請實施例中的一種軟件測試方法的流程圖。如圖1所示的軟件測試方法,可以包括:
[0044]步驟SlOl:獲取測試案例。
[0045]在具體實施中,所述測試案例中包括測試所需的測試參數(shù)。
[0046]步驟S102:啟動待測試軟件,通過所述待測試軟件的用戶界面組接收所述測試案例傳遞的測試參數(shù),驅(qū)動待測試軟件進行測試,并獲取所述待測試軟件對于所接收的測試參數(shù)的處理結(jié)果,直至遍歷所述用戶界面組中的所有用戶界面。
[0047]在具體實施中,所述用戶界面組包括兩個以上的用戶界面,所述用戶界面之間具有預(yù)設(shè)的流轉(zhuǎn)關(guān)系。
[0048]步驟S103:根據(jù)所述處理結(jié)果,分析得到測試結(jié)果。
[0049]在具體實施中,通過對所述處理結(jié)果的分析,可以得到所述待測試軟件的測試結(jié)果。
[0050]圖2示出了本申請實施例中的另一種軟件測試方法的流程圖。如圖2所示的軟件測試方法,可以包括:
[0051 ] 步驟S201:獲取測試案例。
[0052]在具體實施中,所述測試案例可以由用戶事先編寫完成,并統(tǒng)一存放在測試用例管理平臺中,例如,存放在測試用例服務(wù)器中,用戶可以通過登錄所述測試用戶服務(wù)器,選取特定測試目所需的測試案例,并可以指定所述測試案例的執(zhí)行時間,從而可以實現(xiàn)測試案例的獲取和運行的自動化。
[0053]在本申請一實施例中,當(dāng)獲取到測試所需的測試案例以后,接著可以執(zhí)行測試案例的初始化,以生成測試所需的所有測試參數(shù)。例如,創(chuàng)建賬號、訂單和賬號的初始化等。
[0054]步驟S202:啟動所述待測試軟件的用戶界面接收測試案例發(fā)送的測試參數(shù)。
[0055]在本申請一實施例中,當(dāng)獲取到相應(yīng)的測試案例以及測試所需的所有參數(shù)時,可以通過反射機制啟動所述待測試的應(yīng)用(APP)軟件。之后,整個測試流程中的所述待測試軟件的用戶界面(測試執(zhí)行流程中預(yù)設(shè)的首個用戶界面)出現(xiàn),所述用戶界面接收所述測試案例傳遞的相應(yīng)的測試參數(shù),所述待測試軟件根據(jù)所述用戶界面所接收的測試參數(shù)執(zhí)行相應(yīng)的操作。
[0056]這里需要指出的是,所述用戶界面為所述待測試軟件在實際運行時,與用戶進行交互的接口,例如,應(yīng)用軟件的歡迎界面、登陸界面等。所述用戶界面可以接收用戶輸入的數(shù)據(jù)。
[0057]在具體實施中,測試案例傳遞的測試參數(shù)可以用于模擬用戶輸入的數(shù)據(jù)和用戶對于用戶界面的操作。
[0058]步驟S203:獲取所述待測試軟件對于所述用戶界面接收的測試參數(shù)的執(zhí)行結(jié)果。
[00