一種手機音樂apk的自動化測試方法
【專利摘要】本發明提供了一種手機音樂APK的自動化測試方法,包括:通過電腦使用robotium腳本編寫針對于所述手機音樂APK的測試腳本;通過所述電腦編寫測試執行文件;設置測試內容和參數,并通過所述電腦將其編寫為測試文件;將需進行所述手機音樂APK測試的手機與所述電腦連接;在電腦上運行所述測試執行文件,所述手機按照所述測試文件,使用所述測試腳本對所述手機音樂APK進行測試,將測試結果編輯成測試結果文件,并保存至所述電腦中。本發明是基于robotium腳本開發的,可自動執行測試、自動反饋結果和提供截圖,節省了測試的時間,提高了測試的效率和腳本的重復利用率,降低了維護成本。
【專利說明】—種手機音樂APK的自動化測試方法
【技術領域】
[0001]本發明涉及手機應用測試領域,特別是涉及一種手機音樂APK(Android Package)的自動化測試。
【背景技術】
[0002]隨著智能手機的大規模上市,作為主流的android手機也日益普遍。關于手機應用的測試方法比較多,但是專用于手機音樂APK的測試則比較少,而且如何快速、高效自動的測試已經成為日益迫切的問題。
[0003]目前,對手機音樂APK的測試有以下幾種:
[0004]1.人工測試:通過測試人員手工操作來完成測試工作;
[0005]2.白盒測試:通過了解手機應用的源代碼來編寫測試用例進行測試;
[0006]3.黑盒測試:應用monkeyrunner編寫測試腳本進行測試。
[0007]上述方法存在以下缺陷:
[0008]第一種的人工測試方法需要耗費大量的人力,效率較低,不適合大規模的測試使用。
[0009]第二種的白盒測試則需要了解具體的手機音樂模塊的源代碼,對需測試的手機音樂模塊由一定的限制,即只能測試對測試人員而言是開源的手機音樂模塊,并且,白盒測試的方式對測試人員要求較高,需要具備一定的android的基礎知識,不適用于普通測試人員。同時,由于需要讀懂源代碼比較耗時,所以效率也不高。
[0010]第三種采用monkeyrunner編寫測試腳本的黑盒測試,雖然比前兩種方法的測試效率高,但是其收到手機硬件的影響較大,例如,手機的分辨率、手機的屏幕大小都對其有影響;而且手機的UI (User Interface,用戶界面)的變動也會對其造成影響。因此,一般都采用多寫一些腳本程序加以區分。但是,這樣加以區分又勢必會限制測試腳本的適用范圍。
【發明內容】
[0011]鑒于以上所述現有技術的缺點,本發明的目的在于提供一種手機音樂APK的自動化測試方法,用于解決現有技術中手機音樂APK的自動化測試效率較低、受手機硬件影響較大和適用范圍較窄的問題。
[0012]為實現上述目的及其他相關目的,本發明提供一種手機音樂APK的自動化測試方法,包括:通過電腦使用robotium腳本編寫針對于所述手機音樂APK的測試腳本;通過所述電腦編寫測試執行文件;設置測試內容和參數,并通過所述電腦將其編寫為測試文件;將需進行所述手機音樂APK測試的手機與所述電腦連接;在電腦上運行所述測試執行文件,所述手機按照所述測試文件,使用所述測試腳本對所述手機音樂APK進行測試,將測試結果編輯成測試結果文件,并保存至所述電腦中。
[0013]可選地,所述測試內容包括自動播放、自動添加、自動刪除、自動搜索和自動暫停。
[0014]可選地,所述手機內預存有多個音頻文件。
[0015]可選地,所述在電腦上運行所述測試執行文件,所述手機按照所述測試文件,使用所述測試腳本對所述手機音樂APK進行測試,將測試結果編輯成測試結果文件,并保存至所述電腦中的步驟具體包括:讀取所述測試文件,并將讀取的內容逐一對應到測試列表中;按照所述測試列表,逐條使用所述測試腳本對所述手機內預存的所述音頻文件執行測試:步驟一,判斷是否執行測試,如果不執行測試,則將NT信息寫入所述測試結果文件中;如果執行測試,則跳轉至步驟二 ;步驟二,執行所述測試腳本的solo操作,并判斷是否進入所需的界面:如果進入,則跳轉至步驟三;如果沒有進入,則將fail信息寫入所述測試結果文件中;步驟三,繼續所述solo操作,直到所述solo操作完成,截取操作完成后的界面,判斷是否滿足預期結果:如果滿足,則將pass信息寫入所述測試結果文件中;如果不滿足,則將fail信息寫入所述測試結果文件中;當按照所述測試列表逐條測試完成后,將所述測試結果文件保存至所述電腦中。
[0016]可選地,所述電腦上安裝有V1.6版本以上的JAVA和Android SDK。
[0017]可選地,所述測試內容文件和所述測試結果文件均為XML文件。
[0018]可選地,所述電腦使用WINDOWS系統,所述測試執行文件為批處理文件。
[0019]可選地,所述電腦采用LINUX系統,所述測試執行文件為shell指令。
[0020]可選地,所述手機與所述電腦通過USB 口連接。
[0021]如上所述,本發明的一種手機音樂APK的自動化測試方法,是基于robotium腳本開發的,具有以下有益效果:
[0022]1.比MonkeyRunner腳本更好的移植性,更多判斷Case是否正確的方法;
[0023]2.比手工測試更加智能,幾乎不再需要人力操作:能自動執行和自動反饋結果;
[0024]3.比單純的robotium腳本,可以通過測試文件控制執行條數,通過測試結果文件得到簡單易懂的測試反饋,能夠將測試結果通過截圖直觀的反饋給測試者;提高了測試腳本的重復利用率,降低了維護成本;
[0025]4.可直接執行批文件開始測試,不再需要Eclipse程序;
[0026]5.節省了測試的時間,提高了測試的效率和測試腳本的重復利用率,降低了維護的成本。
【專利附圖】
【附圖說明】
[0027]圖1顯示為本發明的實施例公開的一種手機音樂APK的自動化測試方法的流程示意圖。
[0028]圖2顯示為本發明的實施例公開的一種手機音樂APK的自動化測試方法的通過robotium腳本進行手機音樂APK測試的流程示意圖。
[0029]元件標號說明
[0030]SlO ?S50 步驟
[0031]S51 ?S53 步驟
[0032]S521 ?S523 步驟
【具體實施方式】
[0033]以下通過特定的具體實例說明本發明的實施方式,本領域技術人員可由本說明書所揭露的內容輕易地了解本發明的其他優點與功效。本發明還可以通過另外不同的【具體實施方式】加以實施或應用,本說明書中的各項細節也可以基于不同觀點與應用,在沒有背離本發明的精神下進行各種修飾或改變。需說明的是,在不沖突的情況下,以下實施例及實施例中的特征可以相互組合。
[0034]請參閱圖1和圖2。需要說明的是,以下實施例中所提供的圖示僅以示意方式說明本發明的基本構想,遂圖式中僅顯示與本發明中有關的組件而非按照實際實施時的組件數目、形狀及尺寸繪制,其實際實施時各組件的型態、數量及比例可為一種隨意的改變,且其組件布局型態也可能更為復雜。
[0035]本實施例提供了一種手機音樂APK的自動化測試方法,是適用于android4.0的原生音樂APK,其是基于1botium腳本,經過基本的測試框架優化后,在執行時僅需要在電腦端安裝V1.6版本以上JAVA或Android SDK,在手機上預存5_10首音樂即可完成手機音樂APK的自動化測試。具體的自動化測試方法如圖1所示,包括:
[0036]步驟S10,在電腦上使用robotium腳本編寫手機音樂APK的測試腳本:在本實施例中,測試腳本的包名為:TestPackageName。
[0037]步驟S20,通過電腦編寫測試執行文件:
[0038]電腦的系統不同,其測試執行文件也不同。當電腦采用WINDOWS系統時,測試執行文件采用批處理文件;當電腦采用LINUX系統時,測試執行文件是通過shell指令來完成的。在本實施例中,電腦采用WINDOWS系統,對應的測試執行文件為批處理文件,具體為:
[0039]?echo off
[0040]set TestPackageName = com.example, ad.test::TestPackageName 測試腳本的PackageName
[0041]set TestedPackageName = com.android, music::TestedPackageName 被測試 APK的 Package Name
[0042]adb shell am instrument - w % TestPackageName % /com.needbedankt.android, test.1nstrum entat1nTestRunner
[0043]echo 完成…
[0044]adb pulI/data/data/ % TestedPackageName % /files/TEST-all.xml d:/TestResult
[0045]adb pull/mnt/sdcard/CaseRes.xml d:/TestResult
[0046]echo 完成…
[0047]pause
[0048]其中,com.example, ad.test是測試腳本的包名;com.android, music是被測腳本的包名(手機首樂APK) ;d:/TestResult表不測試結果文件的輸出彳λα直。
[0049]步驟S30,設置測試內容和參數,并編寫為測試文件:
[0050]由于本發明是針對手機音樂APK的自動化測試方法,所以其測試內容包括:自動播放、自動添加、自動刪除、自動搜索和自動暫停等等。測試文件將測試內容逐條編輯,手機音樂APK進行自動化測試時是按照測試文件內的測試內容進行測試的。并且,測試文件內還包括測試參數,測試參數是針對具體的某一條測試內容而言的:對某一條測試內容,在測試文件內通過設置測試參數,決定該條測試內容是否執行。
[0051]在本實施例中,測試文件的名稱為setting, xml,具體是:
[0052]
【權利要求】
1.一種手機音樂APK的自動化測試方法,其特征在于,包括: 通過電腦使用robotium腳本編寫針對于所述手機音樂APK的測試腳本; 通過所述電腦編寫測試執行文件; 設置測試內容和參數,并通過所述電腦將其編寫為測試文件; 將需進行所述手機音樂APK測試的手機與所述電腦連接; 在電腦上運行所述測試執行文件,所述手機按照所述測試文件,使用所述測試腳本對所述手機音樂APK進行測試,將測試結果編輯成測試結果文件,并保存至所述電腦中。
2.根據權利要求1所述的手機音樂APK的自動化測試方法,其特征在于,所述測試內容包括自動播放、自動添加、自動刪除、自動搜索和自動暫停。
3.根據權利要求2所述的手機音樂APK的自動化測試方法,其特征在于,所述手機內預存有多個音頻文件。
4.根據權利要求1所述的手機音樂APK的自動化測試方法,其特征在于,所述在電腦上運行所述測試執行文件,所述手機按照所述測試文件,使用所述測試腳本對所述手機音樂APK進行測試,將測試結果編輯成測試結果文件,并保存至所述電腦中的步驟具體包括: 讀取所述測試文件,并將讀取的內容逐一對應到測試列表中; 按照所述測試列表,逐條使用所述測試腳本對所述手機內預存的所述音頻文件執行測試: 步驟一,判斷是否執行測試,如果不執行測試,則將NT信息寫入所述測試結果文件中;如果執行測試,則跳轉至步驟二 ; 步驟二,執行所述測試腳本的solo操作,并判斷是否進入所需的界面:如果進入,則跳轉至步驟三;如果沒有進入,則將fail信息寫入所述測試結果文件中; 步驟三,繼續所述solo操作,直到所述solo操作完成,截取操作完成后的界面,判斷是否滿足預期結果:如果滿足,則將pass信息寫入所述測試結果文件中;如果不滿足,則將fail信息寫入所述測試結果文件中; 當按照所述測試列表逐條測試完成后,將所述測試結果文件保存至所述電腦中。
5.根據權利要求1所述的手機音樂APK的自動化測試方法,其特征在于,所述電腦上安裝有V1.6版本以上的JAVA和Android SDK。
6.根據權利要求1所述的手機音樂APK的自動化測試方法,其特征在于,所述測試文件和所述測試結果文件均為XML文件。
7.根據權利要求1所述的手機音樂APK的自動化測試方法,其特征在于,所述電腦使用WINDOWS系統,所述測試執行文件為批處理文件。
8.根據權利要求1所述的手機音樂APK的自動化測試方法,其特征在于,所述電腦采用LINUX系統,所述測試執行文件為shell指令。
9.根據權利要求1所述的手機音樂APK的自動化測試方法,其特征在于,所述手機與所述電腦通過USB 口連接。
【文檔編號】G06F11/36GK104199770SQ201410441233
【公開日】2014年12月10日 申請日期:2014年9月1日 優先權日:2014年9月1日
【發明者】陳瀟潞 申請人:上海斐訊數據通信技術有限公司