GranularRetriableTestWrapper
  public
  
  
  
  class
  GranularRetriableTestWrapper
  
    extends Object
  
  
  
  
  
      implements
      
        IRemoteTest, 
      
        ITestCollector
      
  
  
| java.lang.Object | |
| ↳ | com.android.tradefed.testtype.suite.GranularRetriableTestWrapper | 
包裝函式類別會在 IRemoteTest 上運作,以便在測試案例層級細分 IRemoteTest。IRemoteTest 可包含多個測試案例。先前,這些測試案例會視為整體:當 IRemoteTest 執行時,所有測試案例都會執行。部分 IRemoteTest (實作 ITestFilterReceiver 的測試) 可接受測試案例的許可清單,並只執行這些測試案例。這個類別會利用現有功能,並提供更靈活的測試套件執行方式。
- 單一測試案例可重試多次 (在同一個 IRemoteTest 執行期間),以降低非測試錯誤的失敗率。
 - 系統會從先前的執行失敗狀況中,動態收集重試的測試案例。
 
注意:
- 如要執行部分測試案例,測試類型必須實作 
ITestFilterReceiver介面。 - X 是自訂的重試次數上限。
 
摘要
巢狀類別 | |
|---|---|
        
        
        
        
        class | 
      
        GranularRetriableTestWrapper.StartEndCollector
        用於擷取缺少的執行開始和結束時間的類別輔助程式。  | 
    
公用建構函式 | |
|---|---|
      
      GranularRetriableTestWrapper(IRemoteTest test, ITestInvocationListener mainListener, int maxRunLimit)
      
      
     | 
  |
      
      GranularRetriableTestWrapper(IRemoteTest test, ModuleDefinition module, ITestInvocationListener mainListener, int maxRunLimit)
      
      
     | 
  |
      
      GranularRetriableTestWrapper(IRemoteTest test, ModuleDefinition module, ITestInvocationListener mainListener, int maxRunLimit, boolean useModuleResultsForwarder)
      
      
     | 
  |
公用建構函式
GranularRetriableTestWrapper
public GranularRetriableTestWrapper (IRemoteTest test, ITestInvocationListener mainListener, int maxRunLimit)
| 參數 | |
|---|---|
test | 
        
          IRemoteTest  | 
      
mainListener | 
        
          ITestInvocationListener  | 
      
maxRunLimit | 
        
          int  | 
      
GranularRetriableTestWrapper
public GranularRetriableTestWrapper (IRemoteTest test, ModuleDefinition module, ITestInvocationListener mainListener, int maxRunLimit)
| 參數 | |
|---|---|
test | 
        
          IRemoteTest  | 
      
module | 
        
          ModuleDefinition  | 
      
mainListener | 
        
          ITestInvocationListener  | 
      
maxRunLimit | 
        
          int  | 
      
GranularRetriableTestWrapper
public GranularRetriableTestWrapper (IRemoteTest test, ModuleDefinition module, ITestInvocationListener mainListener, int maxRunLimit, boolean useModuleResultsForwarder)
| 參數 | |
|---|---|
test | 
        
          IRemoteTest  | 
      
module | 
        
          ModuleDefinition  | 
      
mainListener | 
        
          ITestInvocationListener  | 
      
maxRunLimit | 
        
          int  | 
      
useModuleResultsForwarder | 
        
          boolean  | 
      
公用方法
getExpectedTestsCount
public final int getExpectedTestsCount ()
計算 IRemoteTest 中的測試案例數量。這個值可區分多次重新排定的相同測試案例。
| 傳回 | |
|---|---|
int | 
        |
getFinalTestRunResults
public finalgetFinalTestRunResults () 
從每個 IRemoteTest 執行作業取得合併的 TestRunResults。
| 傳回 | |
|---|---|
 | 
        |
getPassedTests
public finalgetPassedTests () 
| 傳回 | |
|---|---|
 | 
        |
getRetryCount
public int getRetryCount ()
| 傳回 | |
|---|---|
int | 
        |
得分
public void run (TestInformation testInfo, ITestInvocationListener listener)
安排一系列 IRemoteTest.run(TestInformation, ITestInvocationListener)。
| 參數 | |
|---|---|
testInfo | 
        
          TestInformation:包含執行測試所需實用資訊的 TestInformation 物件。 | 
      
listener | 
        
          ITestInvocationListener:ResultForwarder 監聽器,其中包含每個執行作業的新 moduleListener。 | 
      
| 擲回 | |
|---|---|
DeviceNotAvailableException | 
          |
setCollectTestsOnly
public void setCollectTestsOnly (boolean shouldCollectTest)
啟用或停用測試收集模式
setInvocationContext
public void setInvocationContext (IInvocationContext moduleInvocationContext)
將 IInvocationContext 設為 GranularRetriableTestWrapper 屬性。
| 參數 | |
|---|---|
moduleInvocationContext | 
        
          IInvocationContext:包裝函式會在必要時使用 InvocationContext 初始化 MetricCollector。 | 
      
setLogSaver
public void setLogSaver (ILogSaver logSaver)
將模組的 ILogSaver 設為 GranularRetriableTestWrapper 屬性。
| 參數 | |
|---|---|
logSaver | 
        
          ILogSaver:每個測試執行作業的事件監聽器都應儲存記錄。 | 
      
setMarkTestsSkipped
public void setMarkTestsSkipped (boolean skipTestCases)
將 ModuleDefinition RunStrategy 設為 GranularRetriableTestWrapper 屬性。
| 參數 | |
|---|---|
skipTestCases | 
        
          boolean:是否應略過測試案例。 | 
      
setMetricCollectors
public void setMetricCollectors (runMetricCollectors) 
將 ModuleDefinition 的 runMetricCollector 設為 GranularRetriableTestWrapper 屬性。
| 參數 | |
|---|---|
runMetricCollectors | 
        
          :模組的 MetricCollector 清單。 | 
      
setModuleConfig
public void setModuleConfig (IConfiguration moduleConfiguration)
將 ModuleDefinition 的 ModuleConfig 設為 GranularRetriableTestWrapper 屬性。
| 參數 | |
|---|---|
moduleConfiguration | 
        
          IConfiguration:提供模組指標。 | 
      
setModuleId
public void setModuleId (String moduleId)
將 ModuleDefinition 名稱設為 GranularRetriableTestWrapper 屬性。
| 參數 | |
|---|---|
moduleId | 
        
          String:模組定義的名稱。 | 
      
setRetryDecision
public void setRetryDecision (IRetryDecision decision)
設定要使用的 IRetryDecision。
| 參數 | |
|---|---|
decision | 
        
          IRetryDecision  |