حالة اختبار الأمان
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
|
الفئات الفرعية المباشرة المعروفة
NonRootSecurityTestCase |
فئة الاختبارات التي يتم تنفيذها على الأجهزة التي لا تحتوي على جذر الإعلان (adb) التي يجب ألا تحتوي على جذر الإعلان
|
RootSecurityTestCase |
فئة من الاختبارات التي تحتاج إلى جذر على الجهاز لتشغيلها.
|
|
فئة الاختبار الأساسي لجميع اختبارات STS.
يمكنك استخدام RootSecurityTestCase
أو NonRootSecurityTestCase
بدلاً منها.
ملخّص
الطرق المحمية |
boolean
|
containsDriver(ITestDevice device, String driver, boolean checkReadable)
تحقق من وجود برنامج تشغيل على جهاز.
|
boolean
|
containsDriver(ITestDevice device, String driver)
تحقق مما إذا كان برنامج التشغيل موجودًا وقابلاً للقراءة.
|
الثوابت
الحد الأقصى_التلقائي
protected static final int TIMEOUT_DEFAULT
القيمة الثابتة:
60
(0x0000003c)
الفترة الزمنية_NONDETERMINISTIC
public static final int TIMEOUT_NONDETERMINISTIC
القيمة الثابتة:
315
(0x0000013b)
الحقول
اسم الاختبار
public TestName testName
شركة إنشاءات عامة
حالة اختبار SecurityTest
public SecurityTestCase ()
الطرق العامة
مطابقة التأكيد
public void assertMatches (String pattern,
String input)
المعلمات |
pattern |
String |
input |
String |
التأكيد على تطابق متعدد الأسطر
public void assertMatchesMultiLine (String pattern,
String input)
المعلمات |
pattern |
String |
input |
String |
تأكيد NotKernelPointer
public void assertNotKernelPointer (Callable<String> getPtrFunction,
ITestDevice deviceToReboot)
لتشغيل دالة مقدَّمة تجمع سلسلة لاختبارها في حال تسرّب مؤشر النواة. تشير رسالة الأشكال البيانية
يجب أن يعرض تنفيذ الدالة getPtrFunction سلسلة تبدأ بالمؤشر.
أي "01234567". يُسمح باستخدام الأحرف اللاحقة باستثناء [0-9a-fA-F]. في حال
يبدو أن المؤشر معرض لثغرة أمنية، ويتم طرح تأكيد JUnit. نظرًا لأن مؤشرات kernel يمكن
من المحتمل أن يتداخل المؤشر المجزأ مع مساحة النواة العادية. تشير رسالة الأشكال البيانية
إعادة إجراء الاختبار لجعل النتائج الموجبة الخاطئة ذات دلالة إحصائية. عندما لا تكون مؤشرات kernel
التغيير بدون إعادة تشغيل، وفّر الجهاز لإعادة تشغيله.
المعلمات |
getPtrFunction |
Callable : دالة تُرجع سلسلة تبدأ بمؤشر |
deviceToReboot |
ITestDevice : إعادة تشغيل الجهاز عندما لا تتغير مؤشرات النواة
|
التأكيد ليس تطابقًا
public void assertNotMatches (String pattern,
String input)
المعلمات |
pattern |
String |
input |
String |
تأكيد NotMatchMultipleLine
public void assertNotMatchesMultiLine (String pattern,
String input)
المعلمات |
pattern |
String |
input |
String |
تأكيد اتصال Wifi
public void assertWifiConnected (ITestDevice device)
التأكيد على أنّ حالة اتصال Wi-Fi متصلة. لأنّ STS يمكن أن تتم إعادة تشغيل الجهاز فورًا
قبل إجراء الاختبار، قد لا يتم توصيل شبكة Wi-Fi قبل إجراء الاختبار. نجري استطلاع رأي حول شبكة wifi حتى
انتهت المهلة أو تم الاتصال بشبكة wifi.
المعلمات |
device |
ITestDevice : الجهاز الذي سيتم تشغيله
|
الجهاز الافتراضي المتوافق مع جهاز Nfc
public void assumeIsSupportedNfcDevice (ITestDevice device)
المعلمات |
device |
ITestDevice |
BuildmetricsReportLog
public static MetricsReportLog buildMetricsReportLog (ITestDevice device)
المعلمات |
device |
ITestDevice |
المرتجعات |
MetricsReportLog |
|
إنشاء WifiHelper
public WifiHelper createWifiHelper ()
الرميات |
DeviceNotAvailableException |
|
جيت آبي
public static IAbi getAbi (ITestDevice device)
المعلمات |
device |
ITestDevice |
الحصول على معلومات
public static IBuildInfo getBuildInfo (ITestDevice device)
المعلمات |
device |
ITestDevice |
الحصول على PocPusher
public static PocPusher getPocPusher (ITestDevice device)
المعلمات |
device |
ITestDevice |
الحصول على اسم الاختبار
public static String getTestName (ITestDevice device)
المعلمات |
device |
ITestDevice |
وحدة لعب مُدارة
public boolean moduleIsPlayManaged (String modulePackageName)
يمكنك عرض القيمة "صحيح" إذا كانت الوحدة قيد التشغيل.
مثال على تخطّي اختبار استنادًا إلى الوحدات الأساسية:
@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 |
إعادة التشغيل الآمن
public void safeReboot ()
الرميات |
DeviceNotAvailableException |
|
إعداد
public void setUp ()
تنتظر اتصال الجهاز بالإنترنت، وتعرض آخر وقت تشغيل للجهاز.
قطع
public void tearDown ()
يتم التأكّد من اتصال الهاتف بالإنترنت وتتحقّق مما إذا كان الجهاز قد تعطّل.
تحديث KernelStartTime
public void updateKernelStartTime ()
يسمح باجتياز الاختبار في حال طلبه بعد إعادة التشغيل المخطط لها.
الرميات |
DeviceNotAvailableException |
|
الطرق المحمية
تحتوي على برنامج التشغيل
protected boolean containsDriver (ITestDevice device,
String driver,
boolean checkReadable)
تحقق من وجود برنامج تشغيل على جهاز.
المعلمات |
device |
ITestDevice |
driver |
String |
checkReadable |
boolean |
تحتوي على برنامج التشغيل
protected boolean containsDriver (ITestDevice device,
String driver)
تحقق مما إذا كان برنامج التشغيل موجودًا وقابلاً للقراءة.
المعلمات |
device |
ITestDevice |
driver |
String |