主機測試
public class HostTest
extends Object
implements IDeviceTest , ITestFilterReceiver , ITestAnnotationFilterReceiver , IRemoteTest , ITestCollector , IBuildReceiver , IAbiReceiver , IShardableTest , IRuntimeHintProvider , IConfigurationReceiver
java.lang.Object | |
↳ | com.android.tradefed.testtype.HostTest |
用於基於 JUnit 主機的測試的測試運行器。如果要執行的測試實作了IDeviceTest
則該執行程式將傳遞對裝置的參考。
概括
領域 | |
---|---|
public static final String | SET_OPTION_DESC |
public static final String | SET_OPTION_NAME
|
公共構造函數 | |
---|---|
HostTest () |
公共方法 | |
---|---|
void | addAllExcludeAnnotation ( notAnnotations) addAllExcludeAnnotation ( notAnnotations) 新增 |
void | addAllExcludeFilters ( filters) addAllExcludeFilters ( filters) 新增要排除的測試的過濾器的 |
void | addAllIncludeAnnotation ( annotations) addAllIncludeAnnotation ( annotations) 新增 |
void | addAllIncludeFilters ( filters) addAllIncludeFilters ( filters) 新增要包含的測試的過濾器的 |
void | addExcludeAnnotation (String notAnnotation) 添加註釋以排除測試是否用它標記。 |
void | addExcludeFilter (String filter) 新增要排除的測試的過濾器。 |
void | addIncludeAnnotation (String annotation) 添加註釋以包含測試是否用它標記。 |
void | addIncludeFilter (String filter) 新增要包含的測試的過濾器。 |
void | clearExcludeAnnotations () 刪除目前追蹤的所有排除註釋。 |
void | clearExcludeFilters () 刪除目前追蹤的所有排除過濾器。 |
void | clearIncludeAnnotations () 刪除目前追蹤的所有包含註釋。 |
void | clearIncludeFilters () 刪除目前追蹤的所有包含過濾器。 |
int | countTestCases () 傳回測試的所有類別部分的測試案例數量 |
IAbi | getAbi () |
getClassNames () | |
ITestDevice | getDevice () 獲取被測設備。 |
getExcludeAnnotations () 傳回要排除的註釋的目前 | |
getExcludeFilters () 傳回排除過濾器的目前 | |
getIncludeAnnotations () 傳回要包含的註解的目前 | |
getIncludeFilters () 傳回包含篩選器的目前 | |
long | getRuntimeHint () 傳回測試的預期運行時間(以毫秒為單位)。 |
void | run ( TestInformation testInfo, ITestInvocationListener listener) 運行測試,並將結果報告給偵聽器。 |
void | setAbi ( IAbi abi) |
void | setBuild ( IBuildInfo buildInfo) |
void | setCollectTestsOnly (boolean shouldCollectTest) 啟用或停用測試收集模式 |
void | setConfiguration ( IConfiguration configuration) 注入正在使用的 |
void | setDevice ( ITestDevice device) 注入被測設備。 |
static void | setOptionToLoadedObject (Object testObj, keyValueOptions) setOptionToLoadedObject (Object testObj, keyValueOptions) 設備運行程序的幫助程序,用於以與 HostTest 相同的方式從 set-option 設定選項。 |
void | setTestInformation ( TestInformation testInfo) |
split (Integer shardCount, TestInformation testInfo) 我們透過測試類別或方法按個體進行劃分。 |
受保護的方法 | |
---|---|
HostTest | createHostTest (Class<?> classObj) 分片時建立 HostTest 實例的幫助程式。 |
IBuildInfo | getBuild () 取得 HostTest 收到的建置資訊。 |
ClassLoader | getClassLoader () 傳回預設的類別載入器。 |
final | getClasses () |
File | getJarFile (String jarName, TestInformation testInfo) 檢查不同用例中工件通常所在的幾個位置以找到我們的 jar。 |
boolean | hasJUnit4Annotation (Class<?> classObj) 幫助確定我們是否正在處理帶有 Junit4 註釋的測試類別。 |
Object | loadObject (Class<?> classObj) 載入類別物件並設定測試資訊(設備、版本)。 |
void | setClassName (String className) 清除然後設定要運行的類別名稱。 |
boolean | shouldTestRun (AnnotatedElement annotatedElement) 檢查帶有註釋的元素是否通過過濾器。 |
領域
SET_OPTION_DESC
public static final String SET_OPTION_DESC
SET_OPTION_NAME
public static final String SET_OPTION_NAME
公共構造函數
主機測試
public HostTest ()
公共方法
新增全部排除註釋
public void addAllExcludeAnnotation (notAnnotations)
新增ERROR(/Set)
註解以排除測試是否用它標記。
參數 | |
---|---|
notAnnotations |
新增排除註釋
public void addExcludeAnnotation (String notAnnotation)
添加註釋以排除測試是否用它標記。
參數 | |
---|---|
notAnnotation | String |
新增排除過濾器
public void addExcludeFilter (String filter)
新增要排除的測試的過濾器。
參數 | |
---|---|
filter | String |
新增包含註釋
public void addIncludeAnnotation (String annotation)
添加註釋以包含測試是否用它標記。
參數 | |
---|---|
annotation | String |
新增包含過濾器
public void addIncludeFilter (String filter)
新增要包含的測試的過濾器。
參數 | |
---|---|
filter | String |
清除排除註釋
public void clearExcludeAnnotations ()
刪除目前追蹤的所有排除註釋。
清除排除過濾器
public void clearExcludeFilters ()
刪除目前追蹤的所有排除過濾器。
清除包含註釋
public void clearIncludeAnnotations ()
刪除目前追蹤的所有包含註釋。
清除包含過濾器
public void clearIncludeFilters ()
刪除目前追蹤的所有包含過濾器。
測試用例數
public int countTestCases ()
傳回測試的所有類別部分的測試案例數量
退貨 | |
---|---|
int |
取得類別名
publicgetClassNames ()
退貨 | |
---|---|
取得運行時提示
public long getRuntimeHint ()
傳回測試的預期運行時間(以毫秒為單位)。此時間用於負載平衡分片執行
退貨 | |
---|---|
long |
跑步
public void run (TestInformation testInfo, ITestInvocationListener listener)
運行測試,並將結果報告給偵聽器。
參數 | |
---|---|
testInfo | TestInformation : TestInformation 物件包含執行測試的有用資訊。 |
listener | ITestInvocationListener :測試結果的ITestInvocationListener |
投擲 | |
---|---|
DeviceNotAvailableException |
僅設定收集測試
public void setCollectTestsOnly (boolean shouldCollectTest)
啟用或停用測試收集模式
設定配置
public void setConfiguration (IConfiguration configuration)
注入正在使用的IConfiguration
。
參數 | |
---|---|
configuration | IConfiguration |
設定載入對象選項
public static void setOptionToLoadedObject (Object testObj,keyValueOptions)
設備運行程序的幫助程序,用於以與 HostTest 相同的方式從 set-option 設定選項。
參數 | |
---|---|
testObj | Object :將接收選項的物件。 |
keyValueOptions |
分裂
publicsplit (Integer shardCount, TestInformation testInfo)
我們透過測試類別或方法按個體進行劃分。
參數 | |
---|---|
shardCount | Integer :嘗試的分片計數。 |
testInfo | TestInformation :父TestInformation |
退貨 | |
---|---|
要單獨執行的子測試的集合,如果測試目前不可分片,則為null |
受保護的方法
建立主機測試
protected HostTest createHostTest (Class<?> classObj)
分片時建立 HostTest 實例的幫助程式。重寫以從 HostTest 傳回任何子項目。
參數 | |
---|---|
classObj | Class |
退貨 | |
---|---|
HostTest |
取得類別載入器
protected ClassLoader getClassLoader ()
傳回預設的類別載入器。
退貨 | |
---|---|
ClassLoader |
獲取類別
protected finalgetClasses ()
退貨 | |
---|---|
取得Jar文件
protected File getJarFile (String jarName, TestInformation testInfo)
檢查不同用例中工件通常所在的幾個位置以找到我們的 jar。
參數 | |
---|---|
jarName | String |
testInfo | TestInformation |
退貨 | |
---|---|
File |
hasJUnit4Annotation
protected boolean hasJUnit4Annotation (Class<?> classObj)
幫助確定我們是否正在處理帶有 Junit4 註釋的測試類別。
參數 | |
---|---|
classObj | Class |
退貨 | |
---|---|
boolean |
載入對象
protected Object loadObject (Class<?> classObj)
載入類別物件並設定測試資訊(設備、版本)。
參數 | |
---|---|
classObj | Class |
退貨 | |
---|---|
Object |
設定類別名稱
protected void setClassName (String className)
清除然後設定要運行的類別名稱。
參數 | |
---|---|
className | String |
應該測試運行
protected boolean shouldTestRun (AnnotatedElement annotatedElement)
檢查帶有註釋的元素是否通過過濾器。暴露用於單元測試。
退貨 | |
---|---|
boolean | 如果測試不應運行,則為 false。 |