本節介紹 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。
動態@option下載
在某些情況下,測試或某些特定操作所需的檔案在本機上不可用。此功能允許 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。
動態@option下載
在某些情況下,測試或某些特定操作所需的檔案在本機上不可用。此功能允許 Tradefed 從遠端位置取得這些文件,而無需透過建置提供者。