1. 程式人生 > >Android相容性測試GTS-環境搭建、測試執行、結果分析

Android相容性測試GTS-環境搭建、測試執行、結果分析

GTS的全稱是Google Mobile Services Test Suite,所謂的Google Mobile Services即谷歌移動服務,是谷歌開發並推動Android的動力,也是Android系統的靈魂所在。GMS目前提供有Search、Search by Voice、Gmail、Contact Sync、Calendar Sync、Talk、Maps、Street View、YouTube、Android Market (ICS 上更改為Play store)服務。當用戶使用谷歌的時候,谷歌可以把廣告嵌入各種谷歌的服務中。

依據GMS,谷歌對android手機給予不同程度的授權,把搭載Android系統的手機廠商分為三個級別

  1. 免費使用Android作業系統,但不內嵌GMS。

  2. 內嵌部分GMS,但手機不能打上谷歌的商標。

  3. 內嵌所有的GMS服務,也可以使用谷歌商標。如果在android手機中內建有谷歌GMS服務的話,是等同被谷歌官方認證過的產品。

GTS的環境安裝、執行、報告分析這一系列操作跟CTS一樣,只是GTS必須連線VPN,整個測試過程需要1到2個小時,如果網速不好,測試時間也相對較長。具體測試步驟如下:

  1. 刷機成需要測試的版本;

  2. 連線到一個比較高速率的wifi,並且保證能上VPN;

  3. 設定螢幕無操作30分鐘後休眠,即Settings -> Display -> Sleep to 30 minutes;

  4. 設定Settings -> Developer Options -> check "Stay awake" option,其中的Developer Options可以通過點選七次Build number出現。

  5. 設定Settings -> Developer Options -> check "USB debugging" 選項。

  6. 設定Settings -> Developer Options –> uncheck "Verify apps over USB" 選項。

  7. 設定Settings -> Security -> Screen lock –> None。

  8. 如果有谷歌瀏覽器是預設瀏覽器的話,需要做一些precondition,否則可能會由於開啟谷歌瀏覽器時的一些初始畫面fail掉一些case。

    · 開啟谷歌瀏覽器

    · 如果出現 "Welcome to Chrome" ,點選”ACCEPT & CONTINUE”

    · 如果出現 "Set up Chrome,點選 “NO THANKS”

  9. 點選右下角的menu鍵,刪除所有的recent app。

  10. PC端的操作:

    · 安裝了java7

    · 安裝了adb

接下來是具體跑GTS:

  1. Google官網下載最新的GTS測試包,解壓到你的Linux電腦上,連線手機,通過adb device檢測手機是否連線至電腦。

  2. 進入android-xts/tools路徑下,如圖1所示。

   

                                圖1 進入android-xts/tools目錄

  3. 通過”./xts-tradefed” 執行指令碼,即進入GTS控制檯,同時會識別到已連線的手機,如圖2所示。

   

                                  圖2 執行xts-tradefed指令碼 

  4. 之後再控制檯輸入”run xts --plan XTS” 可以run全部的GTS packages,run起來之後會首先穿件儲存結果的資料夾,之後才開始run package,如圖3所示。

   

                                  圖3 run full GTS

  5. 在第一輪之後如果有not executed狀態的case,可以通過”run xts --continue-session session_ID” 繼續run not executed的case,其中的session_ID可以通過”l r”檢視,如圖4所示。

   

                            圖4 continue not executed case

  6. 一般保證測試中的fail項run 三遍,所以當第一輪跑完之後可以通過 ” add derivedplan --plan <plan_name> -s <session> -r fail ” 來專門建立session中fail項的plan,建立之後可以通過 ”l p”檢視是否成功建立plan_name,確保建立成功 之後通過 ”run xts --plan plan_name”來rerun fail項了,如圖5所示。

   

                              圖5 add and run fail plan

  7. 測試結果會自動生成到android-xts/repository/results中,會儲存到日期加時間的資料夾中,其中的xtsTestResult.xml可以用火狐瀏覽器開啟,檢視詳細的測試結果,如圖6所示。

 

                                    圖6 詳細測試結果

 

到此為止GTS從環境搭建到測試結果分析已經全部完成了!

				<script>
					(function(){
						function setArticleH(btnReadmore,posi){
							var winH = $(window).height();
							var articleBox = $("div.article_content");
							var artH = articleBox.height();
							if(artH > winH*posi){
								articleBox.css({
									'height':winH*posi+'px',
									'overflow':'hidden'
								})
								btnReadmore.click(function(){
									articleBox.removeAttr("style");
									$(this).parent().remove();
								})
							}else{
								btnReadmore.parent().remove();
							}
						}
						var btnReadmore = $("#btn-readmore");
						if(btnReadmore.length>0){
							if(currentUserName){
								setArticleH(btnReadmore,3);
							}else{
								setArticleH(btnReadmore,1.2);
							}
						}
					})()
				</script>
				</article>