BaseHostJUnit4Test
public
abstract
class
BaseHostJUnit4Test
extends Object
implements
IAbiReceiver,
ITestInformationReceiver
java.lang.Object | |
↳ | com.android.tradefed.testtype.junit4.BaseHostJUnit4Test |
執行主機 JUnit4 樣式測試的基礎測試類別。這個類別提供安裝、執行支援 以及清除主機端的檢測設備測試這個類別與多裝置相容。 為了順利從主機端執行檢測設備測試,此資料來源應為單一可靠資料來源 避免公用程式和基礎類別重複
摘要
公用建構函式 | |
---|---|
BaseHostJUnit4Test()
|
公用方法 | |
---|---|
final
void
|
autoTearDown()
自動拆卸所有已安裝的 APK。 |
final
IAbi
|
getAbi()
|
final
IBuildInfo
|
getBuild()
|
final
ITestDevice
|
getDevice()
|
final
IInvocationContext
|
getInvocationContext()
|
final
TestRunResult
|
getLastDeviceRunResults()
傳回從執行的最新 runDeviceTest 產生的 |
final
|
getListDevices()
|
TestInformation
|
getTestInformation()
|
boolean
|
hasDeviceFeature(String feature)
|
final
void
|
installPackage(DeviceTestRunOptions options)
根據裝置上的 |
final
void
|
installPackage(String apkFileName, String... options)
在裝置上安裝已有名稱的 APK。 |
final
void
|
installPackage(ITestDevice device, String apkFileName, String... options)
在特定裝置中安裝具有該 APK 名稱的 APK。 |
final
void
|
installPackageAsUser(ITestDevice device, String apkFileName, boolean grantPermission, int userId, String... options)
在特定裝置上為特定使用者安裝 APK。 |
final
void
|
installPackageAsUser(String apkFileName, boolean grantPermission, int userId, String... options)
為特定使用者安裝 APK。 |
final
boolean
|
isPackageInstalled(String pkg)
檢查裝置是否已安裝指定名稱的套件 |
final
boolean
|
isPackageInstalled(ITestDevice device, String pkg)
檢查裝置是否已安裝指定名稱的套件 |
final
boolean
|
runDeviceTests(ITestDevice device, String pkgName, String testClassName, String testMethodName, Integer userId, Long testTimeoutMs)
執行已安裝檢測套件的方法。 |
final
boolean
|
runDeviceTests(ITestDevice device, String pkgName, String testClassName, String testMethodName, Long testTimeoutMs, Long maxTimeToOutputMs, Long maxInstrumentationTimeoutMs)
執行已安裝檢測套件的方法。 |
final
boolean
|
runDeviceTests(ITestDevice device, String runner, String pkgName, String testClassName, String testMethodName, Integer userId, Long testTimeoutMs, Long maxTimeToOutputMs, Long maxInstrumentationTimeoutMs, boolean checkResults, boolean isHiddenApiCheckDisabled, boolean isTestApiCheckDisabled, boolean isIsolatedStorageDisabled, boolean isWindowAnimationDisabled,
執行已安裝檢測套件的方法。 |
final
boolean
|
runDeviceTests(ITestDevice device, String pkgName, String testClassName, String testMethodName, Long testTimeoutMs)
執行已安裝檢測套件的方法。 |
final
boolean
|
runDeviceTests(ITestDevice device, String runner, String pkgName, String testClassName, String testMethodName, Integer userId, Long testTimeoutMs, Long maxTimeToOutputMs, Long maxInstrumentationTimeoutMs, boolean checkResults, boolean isHiddenApiCheckDisabled,
執行已安裝檢測套件的方法。 |
final
boolean
|
runDeviceTests(String pkgName, String testClassName, String testMethodName)
執行已安裝檢測套件的方法。 |
final
boolean
|
runDeviceTests(DeviceTestRunOptions options)
根據 |
final
boolean
|
runDeviceTests(ITestDevice device, String runner, String pkgName, String testClassName, String testMethodName, Integer userId, Long testTimeoutMs, Long maxTimeToOutputMs, Long maxInstrumentationTimeoutMs, boolean checkResults, boolean isHiddenApiCheckDisabled, boolean isTestApiCheckDisabled, boolean isIsolatedStorageDisabled, boolean isWindowAnimationDisabled, boolean isRestartDisabled,
執行已安裝檢測套件的方法。 |
final
boolean
|
runDeviceTests(ITestDevice device, String pkgName, String testClassName, String testMethodName)
執行已安裝檢測套件的方法。 |
final
boolean
|
runDeviceTests(String pkgName, String testClassName, Integer userId, Long testTimeoutMs)
執行已安裝檢測套件的方法。 |
final
boolean
|
runDeviceTests(String pkgName, String testClassName)
執行已安裝檢測套件的方法。 |
final
boolean
|
runDeviceTests(String pkgName, String testClassName, Long testTimeoutMs)
執行已安裝檢測套件的方法。 |
final
boolean
|
runDeviceTests(ITestDevice device, String runner, String pkgName, String testClassName, String testMethodName, Integer userId, Long testTimeoutMs, Long maxTimeToOutputMs, Long maxInstrumentationTimeoutMs, boolean checkResults, boolean isHiddenApiCheckDisabled, boolean isTestApiCheckDisabled, boolean isIsolatedStorageDisabled,
執行已安裝檢測套件的方法。 |
final
boolean
|
runDeviceTests(String runner, String pkgName, String testClassName, String testMethodName)
執行已安裝檢測套件的方法。 |
final
void
|
setAbi(IAbi abi)
|
final
void
|
setTestInformation(TestInformation testInformation)
|
final
String
|
uninstallPackage(String pkgName)
在裝置上解除安裝套件。 |
final
String
|
uninstallPackage(ITestDevice device, String pkgName)
在裝置上解除安裝套件 |
公用建構函式
BaseHostJUnit4Test
public BaseHostJUnit4Test ()
公用方法
自動 TearDown
public final void autoTearDown ()
自動拆卸所有已安裝的 APK。這項操作會解除安裝 安裝的裝置
擲回 | |
---|---|
DeviceNotAvailableException |
getLastDeviceRunResults
public final TestRunResult getLastDeviceRunResults ()
傳回從執行的最新 runDeviceTest 產生的 TestRunResult
。或空值
如果沒有任何結果。
傳回 | |
---|---|
TestRunResult |
getListDevice
public finalgetListDevices ()
傳回 | |
---|---|
|
hasDeviceFeature
public boolean hasDeviceFeature (String feature)
參數 | |
---|---|
feature |
String |
傳回 | |
---|---|
boolean |
擲回 | |
---|---|
DeviceNotAvailableException |
安裝套件
public final void installPackage (DeviceTestRunOptions options)
根據裝置上的 DeviceTestRunOptions
安裝 APK。依附元件
就會自動清理。
參數 | |
---|---|
options |
DeviceTestRunOptions :套件安裝的選項。 |
擲回 | |
---|---|
DeviceNotAvailableException |
|
TargetSetupError |
安裝套件
public final void installPackage (String apkFileName, String... options)
在裝置上安裝已有名稱的 APK。APK 會自動清理。
參數 | |
---|---|
apkFileName |
String :apk 檔案的名稱。 |
options |
String :安裝指令的額外選項 |
擲回 | |
---|---|
DeviceNotAvailableException |
|
TargetSetupError |
安裝套件
public final void installPackage (ITestDevice device, String apkFileName, String... options)
在特定裝置中安裝具有該 APK 名稱的 APK。APK 會自動清理。
參數 | |
---|---|
device |
ITestDevice :要安裝 APK 的 ITestDevice 。 |
apkFileName |
String :apk 檔案的名稱。 |
options |
String :安裝指令的額外選項 |
擲回 | |
---|---|
DeviceNotAvailableException |
|
TargetSetupError |
installPackageAsUser
public final void installPackageAsUser (ITestDevice device, String apkFileName, boolean grantPermission, int userId, String... options)
在特定裝置上為特定使用者安裝 APK。
參數 | |
---|---|
device |
ITestDevice :要安裝 APK 的 ITestDevice 。 |
apkFileName |
String :apk 檔案的名稱。 |
grantPermission |
boolean :是否要在安裝 APK 時傳送授予權限標記。 |
userId |
int :要安裝 APK 的使用者 ID。 |
options |
String :安裝指令的額外選項 |
擲回 | |
---|---|
DeviceNotAvailableException |
|
TargetSetupError |
installPackageAsUser
public final void installPackageAsUser (String apkFileName, boolean grantPermission, int userId, String... options)
為特定使用者安裝 APK。
參數 | |
---|---|
apkFileName |
String :apk 檔案的名稱。 |
grantPermission |
boolean :是否要在安裝 APK 時傳送授予權限標記。 |
userId |
int :要安裝 APK 的使用者 ID。 |
options |
String :安裝指令的額外選項 |
擲回 | |
---|---|
DeviceNotAvailableException |
|
TargetSetupError |
已安裝 isPackage
public final boolean isPackageInstalled (String pkg)
檢查裝置是否已安裝指定名稱的套件
參數 | |
---|---|
pkg |
String :套件名稱 |
傳回 | |
---|---|
boolean |
如果裝置上有套件,則為 true |
擲回 | |
---|---|
DeviceNotAvailableException |
已安裝 isPackage
public final boolean isPackageInstalled (ITestDevice device, String pkg)
檢查裝置是否已安裝指定名稱的套件
參數 | |
---|---|
device |
ITestDevice :應解除安裝套件的裝置。 |
pkg |
String :套件名稱 |
傳回 | |
---|---|
boolean |
如果裝置上有套件,則為 true |
擲回 | |
---|---|
DeviceNotAvailableException |
runDeviceTests
public final boolean runDeviceTests (ITestDevice device, String pkgName, String testClassName, String testMethodName, Integer userId, Long testTimeoutMs)
執行已安裝檢測套件的方法。使用「getLastDeviceRunResults()
」
馬上取得詳細結果
參數 | |
---|---|
device |
ITestDevice :要執行檢測的裝置。 |
pkgName |
String :要執行的套件名稱。 |
testClassName |
String :要執行的測試類別名稱。 |
testMethodName |
String :類別中要執行的測試方法名稱。 |
userId |
Integer :執行測試的使用者 ID。可以是空值。 |
testTimeoutMs |
Long :要套用至每個測試案例的逾時時間 (以毫秒為單位)。 |
傳回 | |
---|---|
boolean |
如果作業成功且沒有失敗,則為「是」。否則傳回「否」。 |
擲回 | |
---|---|
DeviceNotAvailableException |
runDeviceTests
public final boolean runDeviceTests (ITestDevice device, String pkgName, String testClassName, String testMethodName, Long testTimeoutMs, Long maxTimeToOutputMs, Long maxInstrumentationTimeoutMs)
執行已安裝檢測套件的方法。使用「getLastDeviceRunResults()
」
馬上取得詳細結果
參數 | |
---|---|
device |
ITestDevice :要執行檢測的裝置。 |
pkgName |
String :要執行的套件名稱。 |
testClassName |
String :要執行的測試類別名稱。 |
testMethodName |
String :類別中要執行的測試方法名稱。 |
testTimeoutMs |
Long :要套用至每個測試案例的逾時時間 (以毫秒為單位)。 |
maxTimeToOutputMs |
Long :測試開始輸出任何內容的逾時時間上限。 |
maxInstrumentationTimeoutMs |
Long :完整檢測作業必須完成的逾時時間上限。 |
傳回 | |
---|---|
boolean |
如果作業成功且沒有失敗,則為「是」。否則傳回「否」。 |
擲回 | |
---|---|
DeviceNotAvailableException |
runDeviceTests
public final boolean runDeviceTests (ITestDevice device, String runner, String pkgName, String testClassName, String testMethodName, Integer userId, Long testTimeoutMs, Long maxTimeToOutputMs, Long maxInstrumentationTimeoutMs, boolean checkResults, boolean isHiddenApiCheckDisabled, boolean isTestApiCheckDisabled, boolean isIsolatedStorageDisabled, boolean isWindowAnimationDisabled,instrumentationArgs, extraListeners)
執行已安裝檢測套件的方法。使用「getLastDeviceRunResults()
」
馬上取得詳細結果
參數 | |
---|---|
device |
ITestDevice :要執行檢測的裝置。 |
runner |
String |
pkgName |
String :要執行的套件名稱。 |
testClassName |
String :要執行的測試類別名稱。 |
testMethodName |
String :類別中要執行的測試方法名稱。 |
userId |
Integer :執行測試的使用者 ID。可以是空值。 |
testTimeoutMs |
Long :要套用至每個測試案例的逾時時間 (以毫秒為單位)。 |
maxTimeToOutputMs |
Long :測試開始輸出任何內容的逾時時間上限。 |
maxInstrumentationTimeoutMs |
Long :完整檢測作業必須完成的逾時時間上限。 |
checkResults |
boolean :是否檢查結果是否有當機問題。 |
isHiddenApiCheckDisabled |
boolean :是否應停用隱藏的 API 檢查。 |
isTestApiCheckDisabled |
boolean :是否應停用測試 API 檢查。 |
isIsolatedStorageDisabled |
boolean :是否應停用獨立儲存空間。 |
isWindowAnimationDisabled |
boolean :是否應停用視窗動畫。 |
instrumentationArgs |
:要傳遞至檢測的引數。 |
extraListeners |
|
傳回 | |
---|---|
boolean |
如果作業成功且沒有失敗,則為「是」。否則傳回「否」。 |
擲回 | |
---|---|
DeviceNotAvailableException |
runDeviceTests
public final boolean runDeviceTests (ITestDevice device, String pkgName, String testClassName, String testMethodName, Long testTimeoutMs)
執行已安裝檢測套件的方法。使用「getLastDeviceRunResults()
」
馬上取得詳細結果
參數 | |
---|---|
device |
ITestDevice :要執行檢測的裝置。 |
pkgName |
String :要執行的套件名稱。 |
testClassName |
String :要執行的測試類別名稱。 |
testMethodName |
String :類別中要執行的測試方法名稱。 |
testTimeoutMs |
Long :要套用至每個測試案例的逾時時間 (以毫秒為單位)。 |
傳回 | |
---|---|
boolean |
如果作業成功且沒有失敗,則為「是」。否則傳回「否」。 |
擲回 | |
---|---|
DeviceNotAvailableException |
runDeviceTests
public final boolean runDeviceTests (ITestDevice device, String runner, String pkgName, String testClassName, String testMethodName, Integer userId, Long testTimeoutMs, Long maxTimeToOutputMs, Long maxInstrumentationTimeoutMs, boolean checkResults, boolean isHiddenApiCheckDisabled,instrumentationArgs)
執行已安裝檢測套件的方法。使用「getLastDeviceRunResults()
」
馬上取得詳細結果
參數 | |
---|---|
device |
ITestDevice :要執行檢測的裝置。 |
runner |
String |
pkgName |
String :要執行的套件名稱。 |
testClassName |
String :要執行的測試類別名稱。 |
testMethodName |
String :類別中要執行的測試方法名稱。 |
userId |
Integer :執行測試的使用者 ID。可以是空值。 |
testTimeoutMs |
Long :要套用至每個測試案例的逾時時間 (以毫秒為單位)。 |
maxTimeToOutputMs |
Long :測試開始輸出任何內容的逾時時間上限。 |
maxInstrumentationTimeoutMs |
Long :完整檢測作業必須完成的逾時時間上限。 |
checkResults |
boolean :是否檢查結果是否有當機問題。 |
isHiddenApiCheckDisabled |
boolean :是否應停用隱藏的 API 檢查。 |
instrumentationArgs |
:要傳遞至檢測的引數。 |
傳回 | |
---|---|
boolean |
如果作業成功且沒有失敗,則為「是」。否則傳回「否」。 |
擲回 | |
---|---|
DeviceNotAvailableException |
runDeviceTests
public final boolean runDeviceTests (String pkgName, String testClassName, String testMethodName)
執行已安裝檢測套件的方法。使用「getLastDeviceRunResults()
」
馬上取得詳細結果
參數 | |
---|---|
pkgName |
String :要執行的套件名稱。 |
testClassName |
String :要執行的測試類別名稱。 |
testMethodName |
String :類別中要執行的測試方法名稱。 |
傳回 | |
---|---|
boolean |
如果作業成功且沒有失敗,則為「是」。否則傳回「否」。 |
擲回 | |
---|---|
DeviceNotAvailableException |
runDeviceTests
public final boolean runDeviceTests (DeviceTestRunOptions options)
根據 DeviceTestRunOptions
中的資訊執行檢測基礎。
參數 | |
---|---|
options |
DeviceTestRunOptions :驅動檢測設定的 DeviceTestRunOptions 。 |
傳回 | |
---|---|
boolean |
如果作業成功且沒有失敗,則為「是」。否則傳回「否」。 |
擲回 | |
---|---|
|
com.android.tradefed.device.DeviceNotAvailableException |
DeviceNotAvailableException |
runDeviceTests
public final boolean runDeviceTests (ITestDevice device, String runner, String pkgName, String testClassName, String testMethodName, Integer userId, Long testTimeoutMs, Long maxTimeToOutputMs, Long maxInstrumentationTimeoutMs, boolean checkResults, boolean isHiddenApiCheckDisabled, boolean isTestApiCheckDisabled, boolean isIsolatedStorageDisabled, boolean isWindowAnimationDisabled, boolean isRestartDisabled,instrumentationArgs, extraListeners)
執行已安裝檢測套件的方法。使用「getLastDeviceRunResults()
」
馬上取得詳細結果
參數 | |
---|---|
device |
ITestDevice :要執行檢測的裝置。 |
runner |
String |
pkgName |
String :要執行的套件名稱。 |
testClassName |
String :要執行的測試類別名稱。 |
testMethodName |
String :類別中要執行的測試方法名稱。 |
userId |
Integer :執行測試的使用者 ID。可以是空值。 |
testTimeoutMs |
Long :要套用至每個測試案例的逾時時間 (以毫秒為單位)。 |
maxTimeToOutputMs |
Long :測試開始輸出任何內容的逾時時間上限。 |
maxInstrumentationTimeoutMs |
Long :完整檢測作業必須完成的逾時時間上限。 |
checkResults |
boolean :是否檢查結果是否有當機問題。 |
isHiddenApiCheckDisabled |
boolean :是否應停用隱藏的 API 檢查。 |
isTestApiCheckDisabled |
boolean :是否應停用測試 API 檢查。 |
isIsolatedStorageDisabled |
boolean :是否應停用獨立儲存空間。 |
isWindowAnimationDisabled |
boolean :是否應停用視窗動畫。 |
isRestartDisabled |
boolean |
instrumentationArgs |
:要傳遞至檢測的引數。 |
extraListeners |
|
傳回 | |
---|---|
boolean |
如果作業成功且沒有失敗,則為「是」。否則傳回「否」。 |
擲回 | |
---|---|
DeviceNotAvailableException |
runDeviceTests
public final boolean runDeviceTests (ITestDevice device, String pkgName, String testClassName, String testMethodName)
執行已安裝檢測套件的方法。使用「getLastDeviceRunResults()
」
馬上取得詳細結果
參數 | |
---|---|
device |
ITestDevice :要執行檢測的裝置。 |
pkgName |
String :要執行的套件名稱。 |
testClassName |
String :要執行的測試類別名稱。 |
testMethodName |
String :類別中要執行的測試方法名稱。 |
傳回 | |
---|---|
boolean |
如果作業成功且沒有失敗,則為「是」。否則傳回「否」。 |
擲回 | |
---|---|
DeviceNotAvailableException |
runDeviceTests
public final boolean runDeviceTests (String pkgName, String testClassName, Integer userId, Long testTimeoutMs)
執行已安裝檢測套件的方法。使用「getLastDeviceRunResults()
」
馬上取得詳細結果
參數 | |
---|---|
pkgName |
String :要執行的套件名稱。 |
testClassName |
String :要執行的測試類別名稱。 |
userId |
Integer :執行測試的使用者 ID。可以是空值。 |
testTimeoutMs |
Long :要套用至每個測試案例的逾時時間 (以毫秒為單位)。 |
傳回 | |
---|---|
boolean |
如果作業成功且沒有失敗,則為「是」。否則傳回「否」。 |
擲回 | |
---|---|
DeviceNotAvailableException |
runDeviceTests
public final boolean runDeviceTests (String pkgName, String testClassName)
執行已安裝檢測套件的方法。使用「getLastDeviceRunResults()
」
馬上取得詳細結果
參數 | |
---|---|
pkgName |
String :要執行的套件名稱。 |
testClassName |
String :要執行的測試類別名稱。 |
傳回 | |
---|---|
boolean |
如果作業成功且沒有失敗,則為「是」。否則傳回「否」。 |
擲回 | |
---|---|
DeviceNotAvailableException |
runDeviceTests
public final boolean runDeviceTests (String pkgName, String testClassName, Long testTimeoutMs)
執行已安裝檢測套件的方法。使用「getLastDeviceRunResults()
」
馬上取得詳細結果
參數 | |
---|---|
pkgName |
String :要執行的套件名稱。 |
testClassName |
String :要執行的測試類別名稱。 |
testTimeoutMs |
Long :要套用至每個測試案例的逾時時間 (以毫秒為單位)。 |
傳回 | |
---|---|
boolean |
如果作業成功且沒有失敗,則為「是」。否則傳回「否」。 |
擲回 | |
---|---|
DeviceNotAvailableException |
runDeviceTests
public final boolean runDeviceTests (ITestDevice device, String runner, String pkgName, String testClassName, String testMethodName, Integer userId, Long testTimeoutMs, Long maxTimeToOutputMs, Long maxInstrumentationTimeoutMs, boolean checkResults, boolean isHiddenApiCheckDisabled, boolean isTestApiCheckDisabled, boolean isIsolatedStorageDisabled,instrumentationArgs, extraListeners)
執行已安裝檢測套件的方法。使用「getLastDeviceRunResults()
」
馬上取得詳細結果
參數 | |
---|---|
device |
ITestDevice :要執行檢測的裝置。 |
runner |
String |
pkgName |
String :要執行的套件名稱。 |
testClassName |
String :要執行的測試類別名稱。 |
testMethodName |
String :類別中要執行的測試方法名稱。 |
userId |
Integer :執行測試的使用者 ID。可以是空值。 |
testTimeoutMs |
Long :要套用至每個測試案例的逾時時間 (以毫秒為單位)。 |
maxTimeToOutputMs |
Long :測試開始輸出任何內容的逾時時間上限。 |
maxInstrumentationTimeoutMs |
Long :完整檢測作業必須完成的逾時時間上限。 |
checkResults |
boolean :是否檢查結果是否有當機問題。 |
isHiddenApiCheckDisabled |
boolean :是否應停用隱藏的 API 檢查。 |
isTestApiCheckDisabled |
boolean :是否應停用測試 API 檢查。 |
isIsolatedStorageDisabled |
boolean :是否應停用獨立儲存空間。 |
instrumentationArgs |
:要傳遞至檢測的引數。 |
extraListeners |
|
傳回 | |
---|---|
boolean |
如果作業成功且沒有失敗,則為「是」。否則傳回「否」。 |
擲回 | |
---|---|
DeviceNotAvailableException |
runDeviceTests
public final boolean runDeviceTests (String runner, String pkgName, String testClassName, String testMethodName)
執行已安裝檢測套件的方法。使用「getLastDeviceRunResults()
」
馬上取得詳細結果
參數 | |
---|---|
runner |
String :要使用的檢測執行器。 |
pkgName |
String :要執行的套件名稱。 |
testClassName |
String :要執行的測試類別名稱。 |
testMethodName |
String :類別中要執行的測試方法名稱。 |
傳回 | |
---|---|
boolean |
如果作業成功且沒有失敗,則為「是」。否則傳回「否」。 |
擲回 | |
---|---|
DeviceNotAvailableException |
setTestInformation
public final void setTestInformation (TestInformation testInformation)
參數 | |
---|---|
testInformation |
TestInformation |
解除安裝套件
public final String uninstallPackage (String pkgName)
在裝置上解除安裝套件。
參數 | |
---|---|
pkgName |
String :要解除安裝的 Android 套件 |
傳回 | |
---|---|
String |
含有錯誤代碼的 String ;如果成功,則傳回 null |
擲回 | |
---|---|
DeviceNotAvailableException |
解除安裝套件
public final String uninstallPackage (ITestDevice device, String pkgName)
在裝置上解除安裝套件
參數 | |
---|---|
device |
ITestDevice :應解除安裝套件的裝置。 |
pkgName |
String :要解除安裝的 Android 套件 |
傳回 | |
---|---|
String |
含有錯誤代碼的 String ;如果成功,則傳回 null |
擲回 | |
---|---|
DeviceNotAvailableException |