測試運行器的結構

Test Runner 是調用流的執行單元。這是實際運行測試的地方。

接口

測試運行器是通過IRemoteTest 接口定義的,該接口提供了一個簡單的run方法來實現,當測試運行時將調用該方法。

這允許對測試運行進行最簡單的定義。但在實踐中,測試編寫者將需要更多信息來正確編寫他們的測試,通常是構建和設備信息。這是以下接口派上用場的地方。

基本的

這兩個接口是當今使用最廣泛的,因為它們代表了大多數測試的基本需求。

  • IBuildReceiver允許測試獲取在構建提供程序步驟創建的IBuildInfo對象,其中包含與測試設置相關的所有信息和工件。
  • IDeviceTest允許 TF 接收代表被測設備的ITestDevice對象並提供與之交互的 API。

先進的

還有其他接口允許測試工具和測試運行器之間進行更複雜的交互:

  • ITestFilterReceiver ,它允許測試接收一組過濾器,僅用於運行某些測試。這在運行測試的子集時很有用。
  • ITestCollector ,它允許測試運行者只空運行測試而不是實際執行它們。這對於收集所有測試用例的列表很有用。

現有的測試運行器

已經存在多種測試運行器,其中一些用於主要測試類型:

除了上述之外,還有大量的自定義測試運行器;它們用於某些功能測試的特殊目的,例如引導測試。

編寫新的測試運行器

有關編寫新測試運行程序的更多指導,請參閱編寫測試部分