وسيطات أدوات قياس الأداء المصغّرة

يمكنك ضبط سلوك Microbenchmark باستخدام مَعلمات instrumentation التالية: يمكنك إضافة هذه الإعدادات إلى إعدادات Gradle أو تطبيقها مباشرةً عند تشغيل أداة القياس من سطر الأوامر. لضبط هذه المَعلمات لجميع عمليات تشغيل اختبارات Android Studio و"سطر الأوامر"، أضِفها إلىملف testInstrumentationRunnerArguments:

android {
    defaultConfig {
        // ...
        testInstrumentationRunnerArguments["androidx.benchmark.dryRunMode.enable"] = "true"
    }
}

يمكنك أيضًا إعداد مَعلمات الأدوات عند تشغيل معايير الأداء من IDE IDE Android Studio. لتغيير الوسيطات، اتّبِع الخطوات التالية:

  1. عدِّل إعدادات التشغيل من خلال النقر على تعديل واختيار الإعدادات التي تريد تعديلها.
    الشكل 1. عدِّل إعدادات التشغيل.
  2. عدِّل مَعلمات الأدوات بالنقر على بجانب حقل مَعلمات الأدوات.
    الشكل 2. عدِّل مَعلمة أداة القياس.
  3. انقر على وأضِف الوسيطة المطلوبة لأدوات القياس.
    الشكل 3. أضِف وسيطة القياس.

إذا كنت تُجري الاختبار من سطر الأوامر، استخدِم -P android.testInstrumentationRunnerArguments.[name of the argument]:

./gradlew :benchmark:connectedAndroidTest -P android.testInstrumentationRunnerArguments.androidx.benchmark.profiling.mode=StackSampling

إذا كنت تستدعي أمر أداة مباشرةً (قد يكون ذلك في بيئة اختبار التكامل المستمر)، نقْل الوسيطة إلى am instrument باستخدام -e:

adb shell am instrument -e androidx.benchmark.profiling.mode StackSampling -w com.example.macrobenchmark/androidx.benchmark.junit4.AndroidBenchmarkRunner

لمزيد من المعلومات عن ضبط مقاييس الأداء في عملية التطوير المتكامل (CI)، يُرجى الاطّلاع على مقالة قياس الأداء في عملية التطوير المتكامل (CI).

additionalTestOutputDir

لضبط مكان حفظ تقارير قياس الأداء ونتائج تحليل الأداء بتنسيق JSON على الجهاز.

  • نوع الوسيطة: سلسلة مسار الملف
  • الإعداد التلقائي: الدليل الخارجي لحزمة APK الاختبارية

androidx.benchmark.dryRunMode.enable

يتيح لك إجراء معايير الأداء في حلقة واحدة للتأكّد من أنّها تعمل بشكل صحيح.

ويعني ذلك ما يلي:

  • لا يتم فرض أخطاء الضبط (على سبيل المثال، لتسهيل التشغيل باستخدام اختبارات صحة عادية على المحاكيات)
  • لا يُجري مقياس الأداء سوى حلقة واحدة بدون فترة تمهيد.
  • لا يتم تسجيل القياسات والتتبّعات لتقليل وقت التشغيل.

ويؤدي ذلك إلى تحسين معدل نقل البيانات للاختبار والتحقّق من منطق مقياس الأداء على مستوى الإنشاء ودقة القياس.

  • نوع الوسيطة: قيمة منطقية
  • الإعداد التلقائي: false

androidx.benchmark.iterations

تتجاهل أعداد تكرارات الأهداف المستندة إلى الوقت للمساعدة في ضمان إنجاز مقدار متّسق من العمل. لا يكون هذا مفيدًا عادةً إلا عند تفعيل التحليل للمساعدة في ضمان تنفيذ كمية متّسقة من العمل ضمن عملية تتبُّع التحليل عند مقارنة عمليات التنفيذ أو عمليات التشغيل المختلفة. وفي سيناريوهات أخرى، من المحتمل أن يؤدي ذلك إلى خفض دقة القياسات أو استقرارها.

  • نوع الوسيطة: عدد صحيح
  • الإعداد التلقائي: غير محدّد

androidx.benchmark.junit4.SideEffectRunListener

قد تحصل على نتائج اختبار أداء غير متّسقة إذا تم تنفيذ مهمة غير ذات صلة في الخلفية أثناء إجراء الاختبار.

لإيقاف العمل في الخلفية أثناء قياس الأداء، اضبط listener نوع وسيطة أداة القياس على androidx.benchmark.junit4.SideEffectRunListener.

  • نوع الوسيطة: سلسلة
  • الخيارات المتاحة:
    • androidx.benchmark.junit4.SideEffectRunListener
  • الإعداد التلقائي: غير محدّد

androidx.benchmark.output.enable

يتيح هذا الإذن كتابة ملف JSON الناتج في مساحة التخزين الخارجية.

  • نوع الوسيطة: قيمة منطقية
  • الإعداد التلقائي: true

androidx.benchmark.profiling.mode

يسمح هذا الخيار بتسجيل ملفات التتبُّع أثناء تنفيذ اختبارات الأداء. راجِع مقالة تحليل ملف شخصي لقياس أداء اختبارات قياس الأداء المصغر للاطّلاع على الخيارات المتاحة.

  • نوع الوسيطة: سلسلة
  • الخيارات المتاحة:
    • MethodTracing
    • StackSampling
    • None
  • الإعداد التلقائي: None

androidx.benchmark.suppressErrors

يقبل هذا الخيار قائمة مفصولة بفواصل بالأخطاء المطلوب تحويلها إلى تحذيرات.

  • نوع الوسيطة: قائمة سلاسل
  • الخيارات المتاحة:
    • DEBUGGABLE
    • LOW-BATTERY
    • EMULATOR
    • CODE-COVERAGE
    • UNLOCKED
    • SIMPLEPERF
    • ACTIVITY-MISSING
  • الإعداد التلقائي: قائمة فارغة

‎androidx.benchmark.startupMode.enable (مُهمَلة)

إعادة ضبط سلوك التكرار لدعم رمز قياس الأداء أثناء بدء التشغيل يتم تنفيذ قياسات الأداء بدون حلقة التحضير لمدة 10 قياسات. لتقليل التكلفة في اختبارات الأداء الدقيقة، يتم إيقاف احتساب متوسط مدة حلقة التنفيذ.

  • نوع الوسيطة: قيمة منطقية
  • الإعداد التلقائي: false