Tradefed 中的設備狀態

安卓設備

Tradefed 中的 Android 裝置可以經歷透過裝置管理員提供的多種狀態。 Android 裝置的狀態主要有兩類:分配狀態和線上狀態。

所有這些狀態都可以使用ldlist devicesTradefed 控制台中檢查。

tf >l d
Serial        State         Allocation   Product   Variant   Build    Battery
84TX0081B     ONLINE        Available    blueline  blueline  MASTER   100
HT6550300002  ONLINE        Available    sailfish  sailfish  MASTER   94
876X00GNG     UNAUTHORIZED  Unavailable  unknown   unknown   unknown  unknown
HT6570300047  UNAUTHORIZED  Unavailable  unknown   unknown   unknown  unknown

分配狀態

分配狀態是 Tradefed 特定的狀態,用於監控設備使用情況。它們由DeviceAllocationState描述,可以是以下任一種:

  • 未知:轉換期間使用的中間狀態,用於決定是否應從追蹤清單中刪除裝置。當設備與adb斷開連接時會發生這種情況。
  • 已忽略:無法為 TF 會話選擇設備,因為該設備已被過濾掉。 TF 很可能是在匯出ANDROID_SERIAL情況下啟動的,因此它限制了可選擇的裝置範圍。
  • 可用:設備已準備好可供選擇進行測試。
  • 不可用:設備已連接,但尚未準備好運行測試。它通常在adb中顯示為offline
  • 已指派:設備目前正在執行測試,無法選擇。
  • CHECKING_AVAILABILITY:設備剛剛連接,TF 檢查它是否正確在線並且可以使用。如果沒有,它將變得不可用。

在線狀態

在線狀態代表adb devices看到的設備的實際狀態。它們由TestDeviceState描述,可以是:

  • 快速啟動
  • 在線的
  • 恢復
  • 無法使用

Tradefed 線上狀態連結到我們使用的底層adbddmlib 。它用DeviceState來描述狀態。