自動(dòng)化基礎(chǔ)測試_第1頁
自動(dòng)化基礎(chǔ)測試_第2頁
自動(dòng)化基礎(chǔ)測試_第3頁
自動(dòng)化基礎(chǔ)測試_第4頁
自動(dòng)化基礎(chǔ)測試_第5頁
已閱讀5頁,還剩24頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

1、自動(dòng)化自動(dòng)化培訓(xùn)大綱培訓(xùn)大綱 測試開發(fā)環(huán)境搭建 CTS Monkey Monkeyrunner 自動(dòng)化測試的概念 自動(dòng)化測試是把以人為驅(qū)動(dòng)的測試行為轉(zhuǎn)化為機(jī)器執(zhí)行的一種過程。通常,在設(shè)計(jì)了測試用例并通過評(píng)審之后,由測試人員根據(jù)測試用例中描述的規(guī)程一步步執(zhí)行測試,得到實(shí)際結(jié)果與期望結(jié)果的比較。在此過程中,為了節(jié)省人力、時(shí)間或硬件資源,提高測試效率,便引入了自動(dòng)化測試的概念。測試開發(fā)環(huán)境搭建 ubuntu安裝注意事項(xiàng) 編譯環(huán)境配置 開發(fā)工具的配置eclipse virtualbox安裝CTS Android的CTS測試,英文為Compatibility Test Suite,意為兼容性 測試。只有

2、通過CTS測試的設(shè)備才有可能獲得Android的商標(biāo)和享受Android Market的權(quán)限.在進(jìn)行CTS測試之前,應(yīng)該確保已安裝了,JDK,SDK ,eclipse,前面我們已經(jīng)完成了測試開發(fā)環(huán)境搭建。注:CTS測試只能在LINUX系統(tǒng)下進(jìn)行。CTS環(huán)境搭建CTS測試分android2.3和android4.0CTS環(huán)境搭建下載CTS包http:/ ;下載后解壓即可。也可以通過編譯Android源代碼的方式獲得。在android源代碼目錄下輸入make cts命令來編譯CTS,之后會(huì)在out/host/linux-x86/cts/下生成android-cts文件夾。這個(gè)文件夾就是 Compa

3、tibility Test Suit。(這種方法我還沒有試過)設(shè)置環(huán)境變量,可直接在linux的shell中輸入export PATH=“$PATH:/my_path”其它my_path就是stratcts的路徑,如我的是/home/tang/endroid_env/cts/android-cts/tools/startcts,其中引號(hào)是雙劃線,非中文引號(hào) 在手機(jī)或者模擬器上安裝CtsDelegatingAccessibilityService.apk和CtsDeviceAdmin.apk 這個(gè)包在 android-cts/repository/testcases中??梢灾苯釉谑謾C(jī)里安裝,也可

4、通過命令安裝 adb install + 包名 CTS環(huán)境搭建4.去官網(wǎng)下載android-cts-media-1.0,網(wǎng)址:http:/ 手機(jī)或模擬器的設(shè)置:1. 進(jìn)入settings-Privacy-Factory data reset,對(duì)平臺(tái)進(jìn)行reset一次 2. 進(jìn)入settings-Wireless & networks,連接AP (AP需要連外網(wǎng)),打開Bluetooth3. 進(jìn)入settings-display-screen timeout,設(shè)為never timeout,如果沒有這個(gè)選項(xiàng),則設(shè)為30 minutes4. 進(jìn)入settings-display,勾選auto-ro

5、tate screen5. 進(jìn)入settings-applications-development,勾選USB debugging, stay awake和allow mock locations三項(xiàng)6. 進(jìn)入settings-accessibility,勾選accessibility和CtsDelegatingAccessibilityService兩項(xiàng)7. 進(jìn)入settings-language & keyboard-select lanuage,設(shè)為English(United States)8. 平臺(tái)插入一張TF卡(最好是空卡)修改startcts中的SDK_ROOT 這個(gè)只針對(duì).的,

6、進(jìn)入android/out/host/linux-x86/cts /android-cts/repository/tools目錄下,修改startcts腳本文件。將腳本中的SDK_ROOT該成自己的android SDK路徑.$cd home/tester /cts/android-cts/repository/tools $vim startcts修改腳本中出現(xiàn)的第一個(gè)SDK_ROOT,如“SDK_ROOT=/home/tang/android_env/android-sdk-linux_x86,同時(shí)可修改host_config.xml中的 把這個(gè)值改成。手機(jī)測試時(shí)就不會(huì)重啟了,如果不改,默

7、認(rèn)是執(zhí)行200case重啟一次 .的不須要配置, 直接運(yùn)行cts-tradefed這個(gè)即可。文件和2.3同目錄CTS測試 現(xiàn)在我們可以進(jìn)行CTS測試了,直接在shell中輸入startcts(4.0的輸入cts-tradefed )啟動(dòng)CTS測試,如果提示找不到文件,第一:環(huán)境變量設(shè)置有錯(cuò),我們可以到startcts的路徑中輸入./startcts,在沒有設(shè)置環(huán)境變量的情況下同樣可以使用。出現(xiàn)如下提示說明運(yùn)行成功:Android2.3時(shí)進(jìn)入運(yùn)行CTS的界面tangtang-desktop:$ startctsAndroid CTS version 2.3_r5Device(0123456789

8、ABCDEF) connected /注:紅包部分會(huì)設(shè)備ID號(hào),視情況而定cts_host cts_host Android4.0時(shí)進(jìn)入運(yùn)行CTS的界面tzbtzb:/share/CTS/4.0/android-cts/tools$ ./cts-tradefed Android CTS 4.0.3_r2cts-tf CTS(2.3)中常用的幾個(gè)命令 在“cts_host ”提示符下輸入命令,以下為幾個(gè)常用的命令 help查看所有 exit退出 ls -p列出所有的測試包 ls -plan列出所有的測試方案 start -plan plan_name運(yùn)行一個(gè)測試方案, 如:start plan

9、CTS start -plan plan_name -package package_name運(yùn)行一個(gè)特定的測試包,如:start -plan CTS -package android.bluetoothCTS(4.0)中常用的幾個(gè)命令 在“cts_host ”提示符下輸入命令,以下為幾個(gè)常用的命令 help查看所有 exit退出 l packages列出所有的測試包 l p列出所有的測試方案 run cts -plan test_plan_name運(yùn)行一個(gè)測試方案, 如:run cts plan CTS run cts -class/-c -method/-m :運(yùn)行一個(gè)特定的測試包,如:s

10、tart cts -c package -m android.bluetooth查看測試報(bào)告 運(yùn)行測試時(shí),在CTS運(yùn)行界面能看到測試報(bào)告與運(yùn)行狀況。測試完成后可在android-cts/repository/results/下生成詳細(xì)的測試報(bào)告和一些附加信息,其中用日期和時(shí)間命名的文件夾下為所有的測試結(jié)果,同時(shí)文件夾也會(huì)被打成一個(gè)對(duì)應(yīng)的.zip包方便提交。用瀏覽器打開.xml文件(默認(rèn)就是,直接雙擊)就可以查看所用的測試報(bào)告了monkey一、Monkey測試簡介二、Monkey程序介紹三、Monkey命令的簡單幫助四、Monkey命令參數(shù)介紹Monkey測試簡介1.monkey可以直接在XP上

11、運(yùn)行,只要XP上能用adb,即可使用 2.Monkey測試是Android平臺(tái)自動(dòng)化測試的一種手段,通過Monkey程序模擬用戶觸摸屏幕、滑動(dòng)Trackball、按鍵等操作來對(duì)設(shè)備上的程序進(jìn)行壓力測試,檢測程序多久的時(shí)間會(huì)發(fā)生異常。Monkey程序介紹1) Monkey程序由Android系統(tǒng)自帶,使用Java語言寫成,在Android文件系統(tǒng)中的存放路徑是:/system/framework/monkey.jar;2) Monkey.jar程序是由一個(gè)名為“monkey”的Shell腳本來啟動(dòng)執(zhí)行,shell腳本在Android文件系統(tǒng)中的存放路徑是:/system/bin/monkey;這

12、樣就可以通過在shell窗口中執(zhí)行: adb shell monkey +命令參數(shù)來進(jìn)行Monkey測試了。Monkey命令的簡單幫助要獲取Monkey命令自帶的簡單幫助,在linux的shell中執(zhí)行命令: adb shell monkey help 對(duì)于monkey可測試的包可以通過adb來查看: adb shell cd data/data 可測試的包都在這里面了Monkey命令參數(shù)介紹參數(shù): -p參數(shù)-p用于約束限制,用此參數(shù)指定一個(gè)或多個(gè)包(Package,即App)。指定包之后,Monkey將只允許系統(tǒng)啟動(dòng)指定的APP。如果不指定包,Monkey將允許系統(tǒng)啟動(dòng)設(shè)備中的所有APP。*

13、 指定一個(gè)包: adb shell monkey -p com.htc.Weather 100說明:com.htc.Weather為包名,100是事件計(jì)數(shù)(即讓Monkey程序模擬100次隨機(jī)用戶事件)。* 指定多個(gè)包:adb shell monkey -p com.htc.Weather p com.htc.pdfreader -p com.htc.photo.widgets 100* 不指定包:adb shell monkey 100說明:Monkey隨機(jī)啟動(dòng)APP并發(fā)送100個(gè)隨機(jī)事件。2) 參數(shù): -v用于指定反饋信息級(jí)別(信息級(jí)別就是日志的詳細(xì)程度),總共分3個(gè)級(jí)別,分別對(duì)應(yīng)的參數(shù)如

14、下表所示:日志級(jí)別 Level 0 示例 adb shell monkey -p com.htc.Weather v 100說明 缺省值,僅提供啟動(dòng)提示、測試完成和最終結(jié)果等少量信息日志級(jí)別 Level 1示例 adb shell monkey -p com.htc.Weather v -v 100說明 提供較為詳細(xì)的日志,包括每個(gè)發(fā)送到Activity的事件信息 日志級(jí)別 Level 2示例 adb shell monkey -p com.htc.Weather v -v v 100說明 最詳細(xì)的日志,包括了測試中選中/未選中的Activity信息測試用的其它monkey其它參數(shù):參數(shù): -

15、s用于指定偽隨機(jī)數(shù)生成器的seed值,如果seed相同,則兩次Monkey測試所產(chǎn)生的事件序列也相同的。參數(shù): -throttle 用于指定用戶操作(即事件)間的時(shí)延,單位是毫秒;參數(shù): -ignore-crashes用于指定當(dāng)應(yīng)用程序崩潰時(shí)(Force & Close錯(cuò)誤),Monkey是否停止運(yùn)行。如果使用此參數(shù),即使應(yīng)用程序崩潰,Monkey依然會(huì)發(fā)送事件,直到事件計(jì)數(shù)完成。參數(shù): -ignore-timeouts用于指定當(dāng)應(yīng)用程序發(fā)生ANR(Application No Responding)錯(cuò)誤時(shí),Monkey是否停止運(yùn)行。如果使用此參數(shù),即使應(yīng)用程序發(fā)生ANR錯(cuò)誤,Monkey依然

16、會(huì)發(fā)送事件,直到事件計(jì)數(shù)完成。 還有很多命令,大家可以到網(wǎng)上去查資料。(可見附件)monkeyrunner Monkeyrunner只有能用adb的電腦上都能運(yùn)行,我們從以下幾方面對(duì)基進(jìn)行介紹: Monkeyrunner簡介 monkeyrunner工具同Monkey工具的差別 monkeyrunner的測試類型 運(yùn)行monkeyrunnerMonkeyrunner簡介monkeyrunner工具提供了一個(gè)API,使用此API寫出的程序可以在Android代碼之外控制Android設(shè)備和模擬器。通過monkeyrunner,您可以寫出一個(gè)Python程序去安裝一個(gè)Android應(yīng)用程序或測試包

17、,運(yùn)行它,向它發(fā)送模擬擊鍵,截取它的用戶界面圖片,并將截圖存儲(chǔ)于工作站上。monkeyrunner工具的主要設(shè)計(jì)目的是用于測試功能/框架水平上的應(yīng)用程序和設(shè)備,或用于運(yùn)行單元測試套件,但您當(dāng)然也可以將其用于其它目的Monkeyrunner文件在SDK目錄的tools子目錄下,運(yùn)行時(shí),如果沒有指定環(huán)境變量,需到tools目錄下方可執(zhí)行.monkeyrunner工具同Monkey工具的差別Monkey: Monkey工具直接運(yùn)行在設(shè)備或模擬器的adb shell中,生成用戶或系統(tǒng)的偽隨機(jī)事件流。monkeyrunner: monkeyrunner工具則是在工作站上通過API定義的特定命令和事件控制

18、設(shè)備或模擬器。monkeyrunner的測試類型 1、多設(shè)備控制:monkeyrunner API可以跨多個(gè)設(shè)備或模擬器實(shí)施測試套件。您可以在同一時(shí)間接上所有的設(shè)備或一次啟動(dòng)全部模擬器(或統(tǒng)統(tǒng)一起),依據(jù)程序依次連接到每一個(gè),然后運(yùn)行一個(gè)或多個(gè)測試。您也可以用程序啟動(dòng)一個(gè)配置好的模擬器,運(yùn)行一個(gè)或多個(gè)測試,然后關(guān)閉模擬器。 2、 功能測試: monkeyrunner可以為一個(gè)應(yīng)用自動(dòng)貫徹一次功能測試。您提供按鍵或觸摸事件的輸入數(shù)值,然后觀察輸出結(jié)果的截屏 3、回歸測試:monkeyrunner可以運(yùn)行某個(gè)應(yīng)用,并將其結(jié)果截屏與既定已知正確的結(jié)果截屏相比較,以此測試應(yīng)用的穩(wěn)定性。 4、可擴(kuò)展的自

19、動(dòng)化:由于monkeyrunner是一個(gè)API工具包,您可以基于Python模塊和程序開發(fā)一整套系統(tǒng),以此來控制Android設(shè)備。除了使用monkeyrunner API之外,您還可以使用標(biāo)準(zhǔn)的Python os和subprocess模塊來調(diào)用Android Debug Bridge這樣的Android工具。運(yùn)行monkeyrunner 您也可以向monkeyrunner API中添加您自己的類 monkeyrunner工具使用Jython(使用Java編程語言的一種Python實(shí)現(xiàn))。Jython允許monkeyrunnerAPI與Android框架輕松的進(jìn)行交互。使用Jython,您可以

20、使用Python語法來獲取API中的常量、類以及方法。使用monkeyrunner,在shell中輸入monkeyerunner,成功進(jìn)入如下所示:tangtang-desktop:$ monkeyrunnerJython 2.5.0 (Release_2_5_0:6476, Jun 16 2009, 13:33:26) Java HotSpot(TM) 64-Bit Server VM (Sun Microsystems Inc.) on java1.6.0_25下面是一個(gè)實(shí)例: # 導(dǎo)入此程序所需的monkeyrunner模塊from com.android.monkeyrunner import MonkeyRunner, MonkeyDevice # 連接當(dāng)前設(shè)備,返回一個(gè)MonkeyDevice對(duì)象device = MonkeyRunner.waitForConnection()# 安裝Android包,注意,此方法返回的返回值為boolean,由此您可以判斷安裝過程是否正常,紅色部分為你自己在電腦上的路徑device.installPackage(myproject/bin/MyApplication.apk)# 運(yùn)行此應(yīng)用中的一個(gè)活動(dòng)

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論