اختبار ملاحظات التطبيق

بعد تحديث تطبيقك لإتاحة إرسال الملاحظات في شكل حالات رئيسية للتطبيق، يمكنك استخدام الإرشادات الواردة في هذه الصفحة لإعداد اختبارات الوحدات وإرسال ملاحظات الاختبار إلى سياسة جهاز الاختبار وحدة التحكّم بسياسة الجهاز (DPC).

إعداد اختبارات الوحدة

يعرض هذا القسم أمثلة على كيفية إعداد اختبارات الوحدات للتأكّد من تفاعل تطبيقك مع. الرئيسية كما هو متوقع.

الخطوة 1: إعداد الصفوف لقبول KeyedAppStatesReporter كمَعلمة

بدلاً من الاتصال بـ "create()" مباشرةً، عدِّل صفوفك للموافقة. KeyedAppStatesReporter كمعلمة كما في المثال BatteryManager الفئة أدناه:

Kotlin

class BatteryManager(val reporter:KeyedAppStatesReporter) {
  fun lowBattery(battery:Int) {
    reporter.setStatesImmediate(
        hashSetOf(KeyedAppState.builder()
           .setKey("battery")
           .setSeverity(KeyedAppState.SEVERITY_INFO)
           .setMessage("Battery is low")
           .setData(battery.toString())
           .build()))
  }
}

Java

public class BatteryManager {
    private final KeyedAppStatesReporter reporter;
    public BatteryManager(KeyedAppStatesReporter reporter) {
        this.reporter = reporter;
    }

    public void lowBattery(int battery) {
        final Collection states = new HashSet<>();
        states.add(KeyedAppState.builder()
            .setKey("battery")
            .setSeverity(KeyedAppState.SEVERITY_INFO)
            .setMessage("Battery is low")
            .setData(Integer.toString(battery))
            .build();
        reporter.setStatesImmediate(states);
    }
}

بعد ذلك، استخدِم KeyedAppStatesReporter.create للحصول على مثيل لاجتيازه أينما يتم إنشاء BatteryManager.

الخطوة 2: إضافة مكتبة اختبار الملاحظات للمؤسسات إلى ملف build.gradle

أضِف التبعية التالية إلى واجهة ملف build.gradle:

dependencies {
    testImplementation 'androidx.enterprise:enterprise-feedback-testing:1.0.0'
}

الخطوة 3: إنشاء "FakeKeyedAppStatesReporter" وتمريره إلى صفك

Kotlin

val reporter = FakeKeyedAppStatesReporter();
val batteryManager = BatteryManager(reporter);

Java

FakeKeyedAppStatesReporter reporter = new FakeKeyedAppStatesReporter();
BatteryManager batteryManager = new BatteryManager(reporter);

الخطوة 4: تأكيد التفاعلات مع "FakeKeyedAppStatesReporter"

على سبيل المثال، للتحقّق من عدم تحديد أي حالات:

Kotlin

assertThat(reporter.keyedAppStates).isEmpty();

Java

assertThat(reporter.getKeyedAppStates()).isEmpty();

أو أنّه تم طلب تحميل حالة معيّنة:

Kotlin

assertThat(reporter.uploadedKeyedAppStatesByKey["battery"]).isNotNull()

Java

assertThat(reporter.getUploadedKeyedAppStatesByKey().get("battery")).isNotNull();

إرسال ملاحظات اختبارية إلى وحدة التحكّم بسياسة الجهاز (DPC)

نموذج وحدة التحكّم بسياسة الجهاز تسمى وحدة التحكّم بسياسة الجهاز (Test DPC)، وهي قادرة على تلقّي ملاحظات التطبيقات ومتاحة التنزيل.

الخطوة 1: تثبيت وحدة التحكّم بسياسة الجهاز (DPC) الاختبارية

ثبِّت أحدث إصدار من اختبار وحدة التحكّم بسياسة الجهاز (DPC). من "متجر Play". بعد ذلك، اضبط وحدة التحكّم بسياسة الجهاز (DPC) الاختبارية كمشرف للجهاز:

adb shell dpm set-device-owner com.afwsamples.testdpc/.DeviceAdminReceiver

الخطوة 2: تفعيل إشعارات ملاحظات التطبيق

في قائمة Test DPC (اختبار وحدة التحكُّم بسياسة الجهاز)، فعِّل إشعارات ملاحظات التطبيق.

تفعيل الإشعارات

شغِّل حدثًا يتم فيه ضبط حالة التطبيق المقسَّم بمفتاح. في حال إتمام الإجراء، ستعرض وحدة التحكّم بسياسة الجهاز (DPC) التجريبية. الملاحظات في الإشعارات:

تم عرض الملاحظات