日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > Android >内容正文

Android

Android CTS测试

發布時間:2023/12/20 Android 38 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Android CTS测试 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

? Android CTS測試

一、Android CTS測試簡介

CTS全稱Compatibility Test Suite兼容性測試工具,為了保證開發的應用在所有兼容Android的設備上正常運行,并保證一致的用戶體驗,Google制定了CTS來確保設備運行的Android系統全面兼容Android規范,Google也提供了一份兼容性標準文檔(Compatibility Definition Document,CDD)。當電子產品開發現來,并定制了自己的Android系統后,必須要通過最新的CTS檢測,以保證標準的android application能運行在該平臺上。通過了CTS驗證,需要將測試報告提交給Google,以取得android market的認證。CTS是一款 通過命令行操作的工具。目前CTS沒有提供windows版本,只能在Linux下測試。

二、Android CTS測試環境搭建

1.下載配置android-SDK linux版本,地址:

http://developer.android.com/sdk/index.html

2.jdk安裝配置

http://source.android.com/source/initializing.html

3.下載android-cts包,下載地址:

http://source.android.com/compatibility/downloads.html

需要根據手機系統版本和類型下載對應版本的cts包,否則將無法運行測試

大部分是基于Junit和儀表盤技術編寫的。還擴展了自動化測試過程,可以自動執行用例,自動收集和匯總測試結果。CTS采用XML配置文件的方式將這些測試用例分組成多個測試計劃(plan),第三方也可以創建自己的plan。

4.將android-sdk和android-cts解壓放置在同一個文件夾下

5.添加環境變量/etc/profile文件中

三、Android-CTS測試的幾個概念

在進行CTS測試之前,我們先理解其中幾個概念:

Test Plan(Plan):測試計劃,Test package的集合,每個Plan中都包含若干個測試包,以android-cts 2.2版本為例,總共有8個測試計劃:

??????? CTS:包含2萬多個測試用例,這些測試用例是檢驗兼容性必須的,性能測試不包含在本計劃中,隨版本的更新,本測試計劃也

???????????????????? 會更新。

??????? Signature:包含所有針對公有APIs的所有測試

??????? Android:包含針對android APIs的所有測試

??????? Java:包含所有針對Java核心library的測試

??????? VM:包含對虛擬機的所有測試

??????? RefApp:包含針對參與應用程序的所有測試,隨版本的更新,本測試計劃也會更新

??????? Performance:包含所有針對性能的測試,隨版本的更新,本測試計劃也會更新

??????? AppSerurity:針對Application安全性的測試

Test Package(Package):測試包,Test Case的集合

Test Case:測試用例,Test的集合

Test:測試,每一個測試對應一個或者多信Instrumentation Test

Instrumentation Test:Android測試環境的核心是一個Instrumentation框架,在這個框架下,你的測試應用程序可以精確控制應用程序。使用Instrumentation,你可以在主程序啟動之前,創建模擬的系統對象,如Context;控制應用程序的多個生命周期;發送UI事件給應用程序;在執行期間檢查程序狀態。Instrumentation框架通過將主程序和測試程序運行在同一個進程來實現這些功能。

Result_Type:CTS的測試可以通過命令查閱,也可以通過瀏覽器查看結果文件


命令查閱結果:其中Test Result有四種類型的值:Pass,Fail,Timeout,NoExecuted

瀏覽器查看testResult.xml,路徑:.../android-cts/repository/results/


CTS測試執行之前要做的準備工作如下:

PC端操作:

1.檢測設備是否連接上電腦

打開終端輸入命令:adb devices,連接上會顯示設備ID,如果端口被占用

$adb kill-server

$sudo adb start-server

$adb devices

2.設備端安裝CtsDelegatingAccessibilityService.apk

此包位于android-cts/repository/testcases下面。可以將安裝包拷貝到手機后安裝也可以通過打開終端輸入命令,安裝完成后設置進入手機設置菜單

Setting->Accessitility->Accessibility->DelegatingAccessibilityService

終端操作:

1.下載兼容性測試用例包,并解壓,解壓后的文件名命名為"android-cts"。

2.重置手機(恢復出廠設置)。

3.去年谷歌賬戶。

4.設置手機語言為英語:Setting->Language&input->language->English(United States)。

5.插入SIM卡和外置SD卡(SD卡需要格式化:Setting->Storage->Erase SD card->Erase SD card->Erase Everything)。

6.插入USB,連接手機到電腦,可以用adb devices檢查,是否正確連接。

7.打開wifi,并連接到可用wifi。

8.打開藍牙,無須配對。

9.保證手機無操作30分鐘后LCDoff:Settings->Display->Sleep->30 minutes。

10.去掉屏幕鎖:Settings->Security->ScreenLock的值是"None"。

11.打開Settings->Locationservices->"Google location services","GPS satellites","Location&Google search"。

12.打開Settings->Accessibility->Developeroptions->USB debugging(USB調試)。

13.打開Settings->Accessibility->Developeroptions->Stay Awake(保持喚醒)。

14.打開Settings->Accessibility->Developeroptions->Allow mock location(允許模擬位置)。

15.通過Settings->Speechsynthesis->Install voice data安裝“Text To Speech”文件(com.svox.langpack.installer-1.apk),假如android-cts/repository/testcases/中沒有此文件,就省去這一步。

16.如果需要執行可訪問性方面的兼容性測試,則安裝“CtsDelegatingAccessibilityService.apk”(adbinstall -r */android-cts/repository/testcases/CtsDelegatingAccessibilityService.apk),并將Settings->Accessitility->DelegatingAccessibility Service選項打開。

17.如果需要執行設備管理方面的兼容性測試,則安裝“CtsDeviceAdmin.apk”(adb install -r */android-cts/repository/testcases/CtsDeviceAdmin.apk),并將Setting->Security->DevicesAdminstrators->android.devicesadmin.cts.CtsDevicesAdmin等選項打開。

TestCase里面包含很多的測試用例,可以全部測試,也可以只測試部分。

四、測試命令的執行

1.進入CTS測試環境

開啟終端輸入命令:startcts????????? //注意權限問題

如果權限不夠的話輸入:sudo ./startcts

輸入用戶密碼

當出現

Android CTS version 2.2_r1

Device(s5830f1133529) connected

cts_host > cts_host >

就代表已經進入CTS測試環境

2.CTS測試方法

? 查看測試計劃

? Ls --plan

? 查看測試包

? Ls -p

? 運行測試計劃

? start --plan [test_plan_name]

? 舉例:運行VM測試計劃

? 輸入命令:--plan VM

? 運行測試計劃下的測試包

? start --plan [test_plan_name]? -p/--package [plan_package_name]

? 舉例:運行Java計劃下的android.core.tests.archive測試包

? 運行測試計劃下測試包中的某個測試項

? Start --paln [test plan name] -t

? [plan_package_name].[class_name]#[plan_package_test_name]

? 舉例:運行Java計劃下android.core.tests.archive包下的test_tostring測試項

指定某個設備上運行摸個測試計劃中的測試包

start?--plan?[test_plan_name ]‐d/--device?[device_ID]?

舉例:指定設備ID號為1234567890ABCDEF運行VM測試計劃

?

?

?

?

??查看測試結果

?Ls –r

舉例:

?

?

?

?

?

??查看某個session的測試記錄

ls -r/--result -s/--session session_id

舉例: ls –r –s?3

?

3.CTS詳細命令

??Host:

?help: 查看幫助信息

???exit: 退出

? Plan:

??? ls--plan: 列出所有的測試包

??? ls--plan plan_name: 查看測試方案

??? add--plan plan_name: 新建一個測試方案

??? add--derivedplan plan_name -s/--session session_id -r/--resultresult_type:

?derive a plan from the givensession

??? rm--plan plan_name/all: remove a plan or all plans fromrepository

???start --plan test_plan_name: 運行一個測試方案

???start --plan test_plan_name -d/--device device_ID: run a test planusing the

?specified device

???start --plan test_plan_name -t/--test test_name: run a specifictest

???start --plan test_plan_name -p/--package java_package_name:運行一個特定的java測試包

???start --plan test_plan_name -t/--test test_name -d/--devicedevice_ID: 用指定的device運行一個特定的測試方案

???start --plan test_plan_name -p/--package java_package_name-d/--device devic

e_ID: run a specific java package using thespecified device

? Package:

??? ls-p/--package: list available packages

??? ls-p/--package package_name: list contents of the package withspecified na

me

??? add-p/--package root: add packages from root to repository

??? rm-p/--package package_name/all: remove a package or all packagesfrom repo

sitory

? Result:

??? ls-r/--result: list all result of sessions

??? ls-r/--result -s/--session session_id: list detail case result of aspecifi

ed session

??? ls-r/--result [pass/fail/notExecuted/timeout] -s/--sessionsession_id: list

?detail cases of a specifiedsession by the specified result.

? History:

???history/h: list all commands in command history

???history/h count: list the latest count records in commandhistory

???history/h -e num: run the command designated by 'num' in commandhistory

? Device:

ls -d/--device: list available devices

?

4.?Android-CTS用戶指南

網址:http://source.android.com/compatibility/downloads.html

總結

以上是生活随笔為你收集整理的Android CTS测试的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。