SecurityTestCase
public
class
SecurityTestCase
extends StsExtraBusinessLogicHostTestBase
java.lang.Object | |||||
↳ | com.android.tradefed.testtype.junit4.BaseHostJUnit4Test | ||||
↳ | com.android.compatibility.common.tradefed.testtype.BusinessLogicHostTestBase | ||||
↳ | com.android.compatibility.common.tradefed.testtype.ExtraBusinessLogicHostTestBase | ||||
↳ | com.android.sts.common.tradefed.testtype.StsExtraBusinessLogicHostTestBase | ||||
↳ | com.android.sts.common.tradefed.testtype.SecurityTestCase |
所有 STS 測試的基礎測試類別。
請改用 RootSecurityTestCase
或 NonRootSecurityTestCase
。
摘要
常數 | |
---|---|
int |
TIMEOUT_DEFAULT
|
int |
TIMEOUT_NONDETERMINISTIC
|
欄位 | |
---|---|
public
PocPusher |
pocPusher
|
public
TestName |
testName
|
公用建構函式 | |
---|---|
SecurityTestCase()
|
公用方法 | |
---|---|
void
|
assertMatches(String pattern, String input)
|
void
|
assertMatchesMultiLine(String pattern, String input)
|
void
|
assertNotKernelPointer(Callable<String> getPtrFunction, ITestDevice deviceToReboot)
執行收集 String 的提供的函式,以測試核心指標外洩情形。 |
void
|
assertNotMatches(String pattern, String input)
|
void
|
assertNotMatchesMultiLine(String pattern, String input)
|
void
|
assertWifiConnected(ITestDevice device)
斷言 Wi-Fi 連線狀態。 |
void
|
assumeIsSupportedNfcDevice(ITestDevice device)
|
static
MetricsReportLog
|
buildMetricsReportLog(ITestDevice device)
|
WifiHelper
|
createWifiHelper()
|
static
IAbi
|
getAbi(ITestDevice device)
|
static
IBuildInfo
|
getBuildInfo(ITestDevice device)
|
static
PocPusher
|
getPocPusher(ITestDevice device)
|
static
String
|
getTestName(ITestDevice device)
|
boolean
|
moduleIsPlayManaged(String modulePackageName)
如果模組是由 Play 管理,則傳回 true。 |
void
|
safeReboot()
|
void
|
setUp()
等待裝置連上網路。標示裝置最近一次的啟動時間 |
void
|
tearDown()
請確認手機已連上網路,並檢查裝置是否當機 |
void
|
updateKernelStartTime()
允許在預定重新啟動後呼叫測試,通過測試。 |
保護方法 | |
---|---|
boolean
|
containsDriver(ITestDevice device, String driver, boolean checkReadable)
檢查機器上是否有駕駛人。 |
boolean
|
containsDriver(ITestDevice device, String driver)
檢查驅動程式是否存在且可讀取。 |
常數
TIMEOUT_DEFAULT
protected static final int TIMEOUT_DEFAULT
常數值: 60 次 (0x0000003c)
TIMEOUT_NONDETERMINISTIC
public static final int TIMEOUT_NONDETERMINISTIC
常數值: 315 次 (0x0000013b)
欄位
測試名稱
public TestName testName
公用建構函式
SecurityTestCase
public SecurityTestCase ()
公用方法
斷言
public void assertMatches (String pattern, String input)
參數 | |
---|---|
pattern |
String |
input |
String |
擲回 | |
---|---|
Exception |
assertMatchMultiLine
public void assertMatchesMultiLine (String pattern, String input)
參數 | |
---|---|
pattern |
String |
input |
String |
擲回 | |
---|---|
Exception |
assertNotKernelPointer
public void assertNotKernelPointer (Callable<String> getPtrFunction, ITestDevice deviceToReboot)
執行收集 String 的提供的函式,以測試核心指標外洩情形。 getPtrFunction 函式實作必須傳回以指標開頭的字串。 例如「01234567」。結尾字元則可使用,[0-9a-fA-F] 除外。在: 指標似乎容易遭受攻擊,並擲回 JUnit 斷言。由於核心指標可能很像 雜湊,雜湊指標可能會與一般核心空間重疊。 重新執行測試,使偽陽性結果不具統計顯著性。核心指標無法生效的情況 變更,無須重新啟動,請提供裝置以便重新啟動。
參數 | |
---|---|
getPtrFunction |
Callable :這個函式會傳回以指標開頭的字串 |
deviceToReboot |
ITestDevice :在核心指標不會變更時重新啟動的裝置
|
擲回 | |
---|---|
Exception |
assertNotMatch
public void assertNotMatches (String pattern, String input)
參數 | |
---|---|
pattern |
String |
input |
String |
擲回 | |
---|---|
Exception |
assertNotMatchMultiLine
public void assertNotMatchesMultiLine (String pattern, String input)
參數 | |
---|---|
pattern |
String |
input |
String |
擲回 | |
---|---|
Exception |
assertWifi 已連線
public void assertWifiConnected (ITestDevice device)
斷言 Wi-Fi 連線狀態。因為 STS 可以立即重新啟動裝置 可能是在執行測試前未連上 Wi-Fi。我們會輪詢 Wi-Fi 直到 發生逾時問題或已連線到 Wi-Fi。
參數 | |
---|---|
device |
ITestDevice :要執行的裝置
|
擲回 | |
---|---|
Exception |
假設是支援 NfcDevice
public void assumeIsSupportedNfcDevice (ITestDevice device)
參數 | |
---|---|
device |
ITestDevice |
擲回 | |
---|---|
Exception |
buildMetricsReportLog
public static MetricsReportLog buildMetricsReportLog (ITestDevice device)
參數 | |
---|---|
device |
ITestDevice |
傳回 | |
---|---|
MetricsReportLog |
建立 WifiHelper
public WifiHelper createWifiHelper ()
傳回 | |
---|---|
WifiHelper |
擲回 | |
---|---|
DeviceNotAvailableException |
getAbi
public static IAbi getAbi (ITestDevice device)
參數 | |
---|---|
device |
ITestDevice |
傳回 | |
---|---|
IAbi |
getBuildInfo
public static IBuildInfo getBuildInfo (ITestDevice device)
參數 | |
---|---|
device |
ITestDevice |
傳回 | |
---|---|
IBuildInfo |
getPocPusher
public static PocPusher getPocPusher (ITestDevice device)
參數 | |
---|---|
device |
ITestDevice |
傳回 | |
---|---|
PocPusher |
getTestName
public static String getTestName (ITestDevice device)
參數 | |
---|---|
device |
ITestDevice |
傳回 | |
---|---|
String |
ModuleIsPlayManaged
public boolean moduleIsPlayManaged (String modulePackageName)
如果模組是由 Play 管理,則傳回 true。
根據主線模組略過測試的範例:
@Test public void testPocCVE_1234_5678() throws Exception { // This will skip the test if MODULE_METADATA mainline module is play managed. assumeFalse(moduleIsPlayManaged("com.google.android.captiveportallogin")); // Do testing... }
參數 | |
---|---|
modulePackageName |
String |
傳回 | |
---|---|
boolean |
擲回 | |
---|---|
Exception |
安全重新啟動
public void safeReboot ()
擲回 | |
---|---|
DeviceNotAvailableException |
設定
public void setUp ()
等待裝置連上網路。標示裝置最近一次的啟動時間
擲回 | |
---|---|
Exception |
TearDown
public void tearDown ()
請確認手機已連上網路,並檢查裝置是否當機
擲回 | |
---|---|
Exception |
updateKernelStartTime
public void updateKernelStartTime ()
允許在預定重新啟動後呼叫測試,通過測試。
擲回 | |
---|---|
DeviceNotAvailableException |
保護方法
含駕駛
protected boolean containsDriver (ITestDevice device, String driver, boolean checkReadable)
檢查機器上是否有駕駛人。
參數 | |
---|---|
device |
ITestDevice |
driver |
String |
checkReadable |
boolean |
傳回 | |
---|---|
boolean |
擲回 | |
---|---|
Exception |
含駕駛
protected boolean containsDriver (ITestDevice device, String driver)
檢查驅動程式是否存在且可讀取。
參數 | |
---|---|
device |
ITestDevice |
driver |
String |
傳回 | |
---|---|
boolean |
擲回 | |
---|---|
Exception |