Tradefed架構

本節介紹 Tradefed 的內部結構及其關係。有關更多詳細信息,請參閱連結的子頁面。

測試配置

Tradefed 中的測試配置以 XML 格式描述。了解配置的結構是運行和自訂測試的關鍵。

TF配置的結構

全域 TF 配置

全域設定檔是一種特殊的 Tradefed XML 配置,在 Tradefed 啟動時透過TF_GLOBAL_CONFIG環境變數載入。它會載入與 Tradefed 實例範圍相關的對象,這些對象將影響整體線束行為。

全域配置詳細信息

金鑰庫

金鑰庫允許將來自金鑰庫的命令列選項注入 Tradefed,以避免直接在命令列上引用該值。這可用於透過直接從金鑰庫檢索密碼來隱藏命令列中的密碼。

密鑰庫詳細信息

裝置經理

裝置管理員負責追蹤正在運行的 Tradefed 實例上的裝置狀態。監控分配狀態和線上狀態等方面。

測試命令調度程序

Tradefed 中的測試命令調度程式接受要執行的命令,將它們與裝置關聯,然後啟動測試呼叫。

建置提供者

建構提供者是任何測試呼叫的第一步。它下載設定和運行測試所需的資源(建立映像、測試 APK 等)。它還在將傳遞給測試的BuildInfo物件中引用它們。本機可用的資源也可以在BuildInfo物件中連結。

目標製備器和清潔器

目標準備器提供選用操作,可用於將被測目標配置為特定狀態,例如刷新裝置、設定特定屬性以及連接到 Wi-Fi。

測試跑者

Tradefed 中的測試運行程序是指負責實際測試執行的物件。不同的測試運行者以不同的方式驅動測試執行;例如,儀器測試運行程序與 JUnit 測試運行程序有很大不同。

結果報告者

Tradefed 中的結果報告者是指將結果傳送到特定目的地的物件。每個實作通常專門針對不同的結果後端。結果報告者負責將 Tradefed 結果格式轉換為目標格式。

這種靈活的設計允許任何測試報告到任何結果目的地,並輕鬆地以隔離的方式添加更多測試。

指標收集器

指標收集器是 Tradefed 中的一個特殊對象,與測試執行正交。它允許在測試生命週期的不同點(例如,測試開始、測試結束)收集資訊。由於收集器與測試本身分離,因此可以交換、新增和刪除點,而無需更改測試本身。

主機範圍設定

本節介紹適用於完整 Tradefed 實例運行的設定。這些選項會影響整個線束的行為,以適應不同的環境,例如在受限網路中。

附加功能

以下部分描述了 Tradefed 而不是 Tradefed 物件的一般用法。

Tradefed 分片

當測試語料庫很大或需要很長時間才能執行時,可以將其拆分到多個設備上。我們將這種分割稱為分片。本節介紹分片的工作原理及其配置方式。

分片詳情

使用SL4A

Tradefed 支援 Android、SL4A 的腳本層;這是一個自動化工具集,用於以獨立於平台的方式呼叫 Android API。

SL4A 帶有 Tradefed 詳細信息

動態@option下載

在某些情況下,測試或某些特定操作所需的檔案在本機上不可用。此功能允許 Tradefed 從遠端位置取得這些文件,而無需透過建置提供者。

動態@option下載

,

本節介紹 Tradefed 的內部結構及其關係。有關更多詳細信息,請參閱連結的子頁面。

測試配置

Tradefed 中的測試配置以 XML 格式描述。了解配置的結構是運行和自訂測試的關鍵。

TF配置的結構

全域 TF 配置

全域設定檔是一種特殊的 Tradefed XML 配置,在 Tradefed 啟動時透過TF_GLOBAL_CONFIG環境變數載入。它會載入與 Tradefed 實例範圍相關的對象,這些對象將影響整體線束行為。

全域配置詳細信息

金鑰庫

金鑰庫允許將來自金鑰庫的命令列選項注入 Tradefed,以避免直接在命令列上引用該值。這可用於透過直接從金鑰庫檢索密碼來隱藏命令列中的密碼。

密鑰庫詳細信息

裝置經理

裝置管理員負責追蹤正在運行的 Tradefed 實例上的裝置狀態。監控分配狀態和線上狀態等方面。

測試命令調度程序

Tradefed 中的測試命令調度程式接受要執行的命令,將它們與裝置關聯,然後啟動測試呼叫。

建置提供者

建構提供者是任何測試呼叫的第一步。它下載設定和運行測試所需的資源(建立映像、測試 APK 等)。它還在將傳遞給測試的BuildInfo物件中引用它們。本機可用的資源也可以在BuildInfo物件中連結。

目標製備器和清潔器

目標準備器提供選用操作,可用於將被測目標配置為特定狀態,例如刷新裝置、設定特定屬性以及連接到 Wi-Fi。

測試跑者

Tradefed 中的測試運行程序是指負責實際測試執行的物件。不同的測試運行者以不同的方式驅動測試執行;例如,儀器測試運行程序與 JUnit 測試運行程序有很大不同。

結果報告者

Tradefed 中的結果報告者是指將結果傳送到特定目的地的物件。每個實作通常專門針對不同的結果後端。結果報告者負責將 Tradefed 結果格式轉換為目標格式。

這種靈活的設計允許任何測試報告到任何結果目的地,並輕鬆地以隔離的方式添加更多測試。

指標收集器

指標收集器是 Tradefed 中的一個特殊對象,與測試執行正交。它允許在測試生命週期的不同點(例如,測試開始、測試結束)收集資訊。由於收集器與測試本身分離,因此可以交換、新增和刪除點,而無需更改測試本身。

主機範圍設定

本節介紹適用於完整 Tradefed 實例運行的設定。這些選項會影響整個線束的行為,以適應不同的環境,例如在受限網路中。

附加功能

以下部分描述了 Tradefed 而不是 Tradefed 物件的一般用法。

Tradefed 分片

當測試語料庫很大或需要很長時間才能執行時,可以將其拆分到多個設備上。我們將這種分割稱為分片。本節介紹分片的工作原理及其配置方式。

分片詳情

使用SL4A

Tradefed 支援 Android、SL4A 的腳本層;這是一個自動化工具集,用於以獨立於平台的方式呼叫 Android API。

SL4A 帶有 Tradefed 詳細信息

動態@option下載

在某些情況下,測試或某些特定操作所需的檔案在本機上不可用。此功能允許 Tradefed 從遠端位置取得這些文件,而無需透過建置提供者。

動態@option下載