JAR 主機測試

您應導入 Java 封存 (JAR) 主機測試,全面涵蓋軟體程式碼。請按照操作說明建構本機單元測試。編寫小型單元測試,驗證特定函式,僅此而已。

範例

下列 Blueprint 檔案提供簡單的 Hello World JAR 主機測試範例,可供複製並視需要調整:platform_testing/tests/example/jarhosttest/Android.bp

這對應於以下位置的實際測試程式碼: platform_testing/tests/example/jarhosttest/test/android/test/example/helloworld/HelloWorldTest.java

為方便起見,我們在此附上藍圖檔案的快照:

java_test_host {
    name: "HelloWorldHostTest",

    test_suites: ["general-tests"],

    srcs: ["test/**/*.java"],

    static_libs: [
        "junit",
        "mockito",
    ],
}

開頭的 java_test_host 宣告表示這是 JAR 主機測試。如需使用範例,請參閱: frameworks/base/tools/powermodel/Android.bp

設定

如要瞭解下列設定,請參閱下方說明:

  • 指定 java_test_host 模組類型時 (在區塊開頭),必須設定 name。這項設定會為模組命名,產生的 JAR 檔案會使用相同名稱,並加上 .jar 後置字串。在下方範例中,產生的測試 JAR 名為 HelloWorldHostTest.jar。此外,這項設定也會為模組定義 make 目標名稱,因此您可以使用 make [options] <HelloWorldHostTest> 建構測試模組及其所有依附元件。

    name: "HelloWorldHostTest",
    
  • test_suites 設定可讓 Trade Federation 測試架構輕鬆探索測試。您可以在這裡新增其他測試套件,例如 CTS,以便共用 JAR 主機測試。

    test_suites: ["general-tests"],
    
  • static_libs 設定會指示建構系統將具名模組的內容併入目前模組產生的 APK。也就是說,每個具名模組都應產生 .jar 檔案。編譯期間,系統會使用模組內容解析類路徑參照,並納入產生的 APK。

    static_libs: [
        "junit",
    ],