InvocationExecution
public
class
InvocationExecution
extends Object
implements
IInvocationExecution
| java.lang.Object | |
| ↳ | com.android.tradefed.invoker.InvocationExecution |
فئة تصف جميع خطوات الاستدعاء: إنشاء التنزيل، وإعداد الهدف، وتشغيل الاختبارات، والتنظيف.
يمكن تمديدها لتجاوز السلوك التلقائي لبعض الخطوات. يتم تحديد ترتيب الخطوات من خلال TestInvocation.
ملخّص
الثوابت | |
|---|---|
String |
ADB_VERSION_KEY
|
String |
JAVA_CLASSPATH_KEY
|
String |
JAVA_VERSION_KEY
|
طُرق وضع التصميم العامة | |
|---|---|
InvocationExecution()
|
|
الإجراءات العامة | |
|---|---|
void
|
cleanUpBuilds(IInvocationContext context, IConfiguration config)
نفِّذ خطوة إعادة الضبط build_provider. |
void
|
doCleanUp(IInvocationContext context, IConfiguration config, Throwable exception)
نفِّذ خطوة cleanUp الخاصة بـ target_preparer وmulti_target_preparer. |
void
|
doSetup(TestInformation testInfo, IConfiguration config, ITestLogger listener)
نفِّذ خطوة الإعداد target_preparer وmulti_target_preparer. |
void
|
doTeardown(TestInformation testInfo, IConfiguration config, ITestLogger logger, Throwable exception)
نفِّذ خطوة إيقاف target_preparer وmulti_target_preparer. |
boolean
|
fetchBuild(TestInformation testInfo, IConfiguration config, IRescheduler rescheduler, ITestInvocationListener listener)
نفِّذ خطوة build_provider من عملية الاستدعاء. |
void
|
reportLogs(ITestDevice device, ITestLogger listener, TestInvocation.Stage stage)
تسجيل بعض سجلّات الأجهزة في مراحل مختلفة من عملية الاستدعاء |
void
|
runDevicePostInvocationTearDown(IInvocationContext context, IConfiguration config, Throwable exception)
استدعِ |
void
|
runDevicePreInvocationSetup(IInvocationContext context, IConfiguration config, ITestLogger logger)
استدعِ |
void
|
runTests(TestInformation info, IConfiguration config, ITestInvocationListener listener)
يتم تشغيل الاختبار. |
boolean
|
shardConfig(IConfiguration config, TestInformation testInfo, IRescheduler rescheduler, ITestLogger logger)
حاوِل تقسيم الإعداد إلى إعدادات فرعية، ثم إعادة جدولة هذه الإعدادات الفرعية لتنفيذها على موارد متعددة بالتوازي. |
طُرق محمية | |
|---|---|
void
|
collectAutoInfo(IConfiguration config, TestInformation info)
جمع بعض المعلومات تلقائيًا على الجهاز الأساسي قيد الاختبار |
IShardHelper
|
createShardHelper()
أنشئ |
void
|
customizeDevicePreInvocation(IConfiguration config, IInvocationContext context)
امنح فرصة لتخصيص بعض إعدادات الجهاز قبل preInvocationSetup. |
String
|
getAdbVersion()
تعرِض هذه السمة إصدار adb المستخدَم في الاستدعاء. |
List<ITargetPreparer>
|
getLabPreparersToRun(IConfiguration config, String deviceName)
استرداد قائمة بمُعدّي الاختبارات المعملية لتشغيلها على هذا الجهاز |
List<ITargetPreparer>
|
getTargetPreparersToRun(IConfiguration config, String deviceName)
استرداد قائمة ببرامج إعداد الأهداف التي سيتم تشغيلها على هذا الجهاز |
void
|
linkExternalDirs(IBuildInfo info, TestInformation testInfo)
|
void
|
logHostAdb(IConfiguration config, ITestLogger logger)
اجمع السجلات من $TMPDIR/adb.$UID.log. |
Throwable
|
runPreparersTearDown(TestInformation testInfo, ITestDevice device, String deviceName, int deviceIndex, ITestLogger logger, Throwable exception, List<ITargetPreparer> preparersToRun, Map<String, Set<ITargetPreparer>> trackPreparersMap)
|
void
|
setTestTag(IBuildInfo info, IConfiguration config)
التعامل مع ضبط علامة الاختبار على معلومات الإصدار |
الثوابت
ADB_VERSION_KEY
public static final String ADB_VERSION_KEY
القيمة الثابتة: "adb_version"
JAVA_CLASSPATH_KEY
public static final String JAVA_CLASSPATH_KEY
Constant Value: "java_classpath"
JAVA_VERSION_KEY
public static final String JAVA_VERSION_KEY
Constant Value: "java_version"
طُرق وضع التصميم العامة
InvocationExecution
public InvocationExecution ()
الإجراءات العامة
cleanUpBuilds
public void cleanUpBuilds (IInvocationContext context, IConfiguration config)
نفِّذ خطوة إعادة الضبط build_provider. مرتبط بجلب الإصدار.
| المعلَمات | |
|---|---|
context |
IInvocationContext: IInvocationContext الخاص بالاستدعاء |
config |
IConfiguration: IConfiguration لعملية التشغيل التجريبي هذه |
doCleanUp
public void doCleanUp (IInvocationContext context, IConfiguration config, Throwable exception)
نفِّذ خطوة cleanUp الخاصة بـ target_preparer وmulti_target_preparer. هل يتم تنظيف الأجهزة؟
| المعلَمات | |
|---|---|
context |
IInvocationContext: IInvocationContext الخاص بالاستدعاء |
config |
IConfiguration: IConfiguration لعملية التشغيل التجريبي هذه |
exception |
Throwable: الاستثناء الأصلي الذي تم طرحه أثناء تنفيذ الاختبار. |
doSetup
public void doSetup (TestInformation testInfo, IConfiguration config, ITestLogger listener)
نفِّذ خطوة الإعداد target_preparer وmulti_target_preparer. تُجري عملية إعداد جميع الأجهزة المطلوبة لتنفيذ الاختبار.
| المعلَمات | |
|---|---|
testInfo |
TestInformation: TestInformation الخاص بالاستدعاء |
config |
IConfiguration: IConfiguration لعملية التشغيل التجريبي هذه |
listener |
ITestLogger: ITestLogger للإبلاغ عن سجلّات أخطاء الإعداد |
| عمليات الطرح | |
|---|---|
BuildError |
|
DeviceNotAvailableException |
|
TargetSetupError |
|
doTeardown
public void doTeardown (TestInformation testInfo, IConfiguration config, ITestLogger logger, Throwable exception)
نفِّذ خطوة إيقاف target_preparer وmulti_target_preparer. يتم إيقاف الأجهزة المرتبطة بعملية الإعداد.
| المعلَمات | |
|---|---|
testInfo |
TestInformation: TestInformation الخاص بالاستدعاء |
config |
IConfiguration: IConfiguration لعملية التشغيل التجريبي هذه |
logger |
ITestLogger: ITestLogger للإبلاغ عن السجلات |
exception |
Throwable: الاستثناء الأصلي الذي تم طرحه أثناء تنفيذ الاختبار. |
| عمليات الطرح | |
|---|---|
Throwable |
|
fetchBuild
public boolean fetchBuild (TestInformation testInfo, IConfiguration config, IRescheduler rescheduler, ITestInvocationListener listener)
نفِّذ خطوة build_provider من عملية الاستدعاء.
| المعلَمات | |
|---|---|
testInfo |
TestInformation: TestInformation الخاص بالاستدعاء |
config |
IConfiguration: IConfiguration لعملية التشغيل التجريبي هذه |
rescheduler |
IRescheduler: IRescheduler، لإعادة جدولة أجزاء من الاستدعاء لتنفيذها على موارد أخرى |
listener |
ITestInvocationListener: ITestInvocation للإبلاغ عن حالات تعذُّر تنزيل الإصدار. |
| المرتجعات | |
|---|---|
boolean |
يتم ضبط القيمة على "صحيح" إذا تم تنزيل الإصدار بنجاح، وعلى "خطأ" في الحالات الأخرى. |
| عمليات الطرح | |
|---|---|
BuildRetrievalError |
|
DeviceNotAvailableException |
|
reportLogs
public void reportLogs (ITestDevice device, ITestLogger listener, TestInvocation.Stage stage)
تسجيل بعض سجلّات الأجهزة في مراحل مختلفة من عملية الاستدعاء على سبيل المثال: logcat.
| المعلَمات | |
|---|---|
device |
ITestDevice: الجهاز الذي سيتم إعداد التقارير منه. |
listener |
ITestLogger: أداة تسجيل السجلات |
stage |
TestInvocation.Stage: تمثّل هذه السمة مرحلة الاستدعاء التي نحن فيها. |
runDevicePostInvocationTearDown
public void runDevicePostInvocationTearDown (IInvocationContext context, IConfiguration config, Throwable exception)
استدعِ ITestDevice.postInvocationTearDown(Throwable) لكل جزء من الجهاز يشكّل جزءًا من عملية الاستدعاء.
| المعلَمات | |
|---|---|
context |
IInvocationContext: IInvocationContext الخاص بالاستدعاء |
config |
IConfiguration: IConfiguration لعملية التشغيل التجريبي هذه |
exception |
Throwable: الاستثناء الأصلي الذي تم طرحه أثناء تنفيذ الاختبار، إذا كان ذلك منطبقًا. |
runDevicePreInvocationSetup
public void runDevicePreInvocationSetup (IInvocationContext context, IConfiguration config, ITestLogger logger)
استدعِ ERROR(ITestDevice.preInvocationSetup(IBuildInfo)/com.android.tradefed.device.ITestDevice#preInvocationSetup(com.android.tradefed.build.IBuildInfo) ITestDevice.preInvocationSetup(IBuildInfo)) لكل جزء من الجهاز يشكّل جزءًا من عملية الاستدعاء.
| المعلَمات | |
|---|---|
context |
IInvocationContext: IInvocationContext الخاص بالاستدعاء |
config |
IConfiguration: IConfiguration لعملية التشغيل التجريبي هذه |
logger |
ITestLogger: ITestLogger للإبلاغ عن السجلات |
| عمليات الطرح | |
|---|---|
DeviceNotAvailableException |
|
TargetSetupError |
|
runTests
public void runTests (TestInformation info, IConfiguration config, ITestInvocationListener listener)
يتم تشغيل الاختبار.
| المعلَمات | |
|---|---|
info |
TestInformation: TestInformation لتشغيل الاختبارات |
config |
IConfiguration: IConfiguration المطلوب تنفيذه |
listener |
ITestInvocationListener: ITestInvocationListener نتائج الاختبار |
| عمليات الطرح | |
|---|---|
Throwable |
|
shardConfig
public boolean shardConfig (IConfiguration config, TestInformation testInfo, IRescheduler rescheduler, ITestLogger logger)
حاوِل تقسيم الإعداد إلى إعدادات فرعية، ثم إعادة جدولة هذه الإعدادات الفرعية لتنفيذها على موارد متعددة بالتوازي.
إذا كان عدد الأجزاء أكبر من 1، سيتم إنشاء إعدادات لكل جزء ببساطة من خلال ضبط فهارس الأجزاء وإعادة جدولتها. في حال عدم ضبط عدد الأجزاء، سيتم استخدام القيمة الافتراضية IShardHelper.shardConfig.
| المعلَمات | |
|---|---|
config |
IConfiguration: IConfiguration الحالي |
testInfo |
TestInformation: TestInformation الذي يحتوي على معلومات الاختبارات |
rescheduler |
IRescheduler: IRescheduler |
logger |
ITestLogger: ITestLogger المستخدَم لتسجيل الملف أثناء التقسيم. |
| المرتجعات | |
|---|---|
boolean |
صحيح إذا تم تقسيم الاختبار. بخلاف ذلك، يتم عرض false |
طُرق محمية
collectAutoInfo
protected void collectAutoInfo (IConfiguration config, TestInformation info)
جمع بعض المعلومات تلقائيًا على الجهاز الأساسي قيد الاختبار
| المعلَمات | |
|---|---|
config |
IConfiguration |
info |
TestInformation |
| عمليات الطرح | |
|---|---|
DeviceNotAvailableException |
|
createShardHelper
protected IShardHelper createShardHelper ()
أنشئ IShardHelper ليتم استخدامه.
| المرتجعات | |
|---|---|
IShardHelper |
|
customizeDevicePreInvocation
protected void customizeDevicePreInvocation (IConfiguration config, IInvocationContext context)
امنح فرصة لتخصيص بعض إعدادات الجهاز قبل preInvocationSetup.
| المعلَمات | |
|---|---|
config |
IConfiguration: إعدادات الاستدعاء |
context |
IInvocationContext: سياق الاستدعاء الحالي |
getAdbVersion
protected String getAdbVersion ()
تعرِض هذه السمة إصدار adb المستخدَم في الاستدعاء.
| المرتجعات | |
|---|---|
String |
|
getLabPreparersToRun
protected List<ITargetPreparer> getLabPreparersToRun (IConfiguration config, String deviceName)
استرداد قائمة بمُعدّي الاختبارات المعملية لتشغيلها على هذا الجهاز
يتم تجاهل هذه السمة في فئات وضع الحماية لمنع تشغيل أدوات إعداد المعمل داخل العملية الفرعية في وضع الحماية
| المعلَمات | |
|---|---|
config |
IConfiguration |
deviceName |
String |
| المرتجعات | |
|---|---|
List<ITargetPreparer> |
|
getTargetPreparersToRun
protected List<ITargetPreparer> getTargetPreparersToRun (IConfiguration config, String deviceName)
استرداد قائمة ببرامج إعداد الأهداف التي سيتم تشغيلها على هذا الجهاز
يتم تجاهل هذه السمة في فئات وضع الحماية لمنع تشغيل أدوات إعداد المعمل داخل العملية الفرعية في وضع الحماية
| المعلَمات | |
|---|---|
config |
IConfiguration |
deviceName |
String |
| المرتجعات | |
|---|---|
List<ITargetPreparer> |
|
linkExternalDirs
protected void linkExternalDirs (IBuildInfo info, TestInformation testInfo)
| المعلَمات | |
|---|---|
info |
IBuildInfo |
testInfo |
TestInformation |
logHostAdb
protected void logHostAdb (IConfiguration config, ITestLogger logger)
اجمع السجلات من $TMPDIR/adb.$UID.log.
| المعلَمات | |
|---|---|
config |
IConfiguration |
logger |
ITestLogger |
runPreparersTearDown
protected Throwable runPreparersTearDown (TestInformation testInfo, ITestDevice device, String deviceName, int deviceIndex, ITestLogger logger, Throwable exception, List<ITargetPreparer> preparersToRun, Map<String, Set<ITargetPreparer>> trackPreparersMap)
| المعلَمات | |
|---|---|
testInfo |
TestInformation |
device |
ITestDevice |
deviceName |
String |
deviceIndex |
int |
logger |
ITestLogger |
exception |
Throwable |
preparersToRun |
List |
trackPreparersMap |
Map |
| المرتجعات | |
|---|---|
Throwable |
|
setTestTag
protected void setTestTag (IBuildInfo info, IConfiguration config)
التعامل مع ضبط علامة الاختبار على معلومات الإصدار
| المعلَمات | |
|---|---|
info |
IBuildInfo |
config |
IConfiguration |