Google is committed to advancing racial equity for Black communities. See how.
本頁面由 Cloud Translation API 翻譯而成。
Switch to English

Android平台測試

此內容適用於Android平台開發人員。在了解如何在Android平台上完成測試之前,請參閱Android平台架構以獲取概述。

然後深入研究本節中為您提供的精確技術,例如供應商測試套件(VTS)以及其眾多的視頻和代碼實驗室教程

另請注意,可以使用特定安全性的測試機制來檢測和加固設備以防禦漏洞。

對於應用程序測試,請從“測試基礎”開始,並使用提供的示例進行Android Testing Codelab

最後,請注意,通過Repo Hooks可以進行基本的預提交測試,該掛鉤可以運行linters,檢查格式並在繼續進行操作(例如上載提交)之前觸發單元測試。請注意,這些掛鉤在默認情況下是禁用的。有關更多詳細信息,請參見Repo Hooks簡介。

什麼以及如何測試

平台測試通常與一個或多個Android系統服務或硬件抽象層(HAL)層進行交互,行使被測對象的功能,並斷言測試結果的正確性。

因此,平台測試可以:

  1. 通過應用程序框架行使框架API;正在使用的特定API可能包括:
    • 適用於第三方應用程序的公共API
    • 用於特權應用程序的隱藏API,即係統API
    • 私有API(@hide,或受保護的私有包)
  2. 通過原始的活頁夾/ IPC代理直接調用Android系統服務
  3. 通過低級API或IPC接口直接與HAL交互

類型1和2通常寫為檢測測試 ,而類型3通常寫為使用gtest框架的本機測試

要了解更多信息,請參見我們的端到端示例:

熟悉這些工具,因為它們是Android中測試所固有的。

兼容性測試套件(CTS)

Android兼容性測試套件是一組各種類型的測試,用於確保Android框架實現在OEM合作夥伴和平台發行版之間的兼容性。 該套件還包括檢測測試和本機測試(也使用gtest框架)。

CTS和平台測試不是互斥的,以下是一些通用準則:

  • 如果測試斷言框架API函數/行為的正確性,並且應在OEM合作夥伴之間實施,則應在CTS中進行
  • 如果測試旨在在平台開發週期中捕獲回歸,並且可能需要特權許可才能執行,並且可能取決於實現細節(如AOSP中發布的那樣),則應僅是平台測試

供應商測試套件(VTS)

供應商測試套件 (VTS)可以自動進行HAL和OS內核測試。要使用VTS測試Android本機系統實現,請設置測試環境,然後使用VTS計劃測試補丁。

貿易聯盟測試基礎架構

貿易聯盟 (Tradefed或TF)是一個連續的測試框架,旨在在Android設備上運行測試。 TF可以在您的平台結帳時在您的辦公桌上本地運行功能測試。要在TF中運行測試,需要兩個文件:一個Java測試源文件和一個XML配置文件。有關示例 ,請參見RebootTest.javareboot.xml

調試

調試”部分總結了有用的工具和相關命令,用於在開發平台級功能時調試,跟踪和分析本機Android平台代碼。