Testuj opinie o aplikacji

Po zaktualizowaniu aplikacji tak, aby obsługiwała przesyłanie opinii w formie kluczy stanu aplikacji, możesz skorzystać ze wskazówek na tej stronie, aby skonfigurować testy jednostkowe i wysłać opinię z testu do kontrolera zasad dotyczących urządzeń testowych (DPC).

Konfigurowanie testów jednostkowych

W tej sekcji znajdziesz przykłady konfigurowania testów jednostkowych pod kątem sprawdzania, czy aplikacja współdziała ze stanami aplikacji jako kluczem zgodnie z oczekiwaniami.

Krok 1. Skonfiguruj zajęcia tak, aby akceptowały parametr KeyedAppStatesReporter

Zamiast bezpośrednio wywoływać create(), zmodyfikuj klasy tak, aby akceptowały parametr KeyedAppStatesReporter, jak w przykładowej klasie BatteryManager poniżej:

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);
    }
}

Następnie użyj wywołania KeyedAppStatesReporter.create, aby pobrać instancję w miejscu, w którym jest tworzony BatteryManager.

Krok 2. Dodaj do pliku build.gradle bibliotekę do testowania opinii firmy

Dodaj tę zależność do pliku build.gradle aplikacji:

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

Krok 3. Utwórz zadanie FakeKeyedAppStatesReporter i przekaż je uczniom

Kotlin

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

Java

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

Krok 4. Zgłoś interakcje z usługą FakeKeyedAppStatesReporter

Aby np. sprawdzić, czy nie ustawiono żadnych stanów:

Kotlin

assertThat(reporter.keyedAppStates).isEmpty();

Java

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

Lub gdy zażądano przesłania informacji o konkretnym stanie:

Kotlin

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

Java

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

Wyślij opinię testową do Test DPC

Przykładowy kontroler zasad dotyczących urządzeń o nazwie Test DPC może odbierać opinie o aplikacji i można go pobrać.

Krok 1. Zainstaluj testowy plik DPC

Zainstaluj najnowszą wersję gry Test DPC ze Sklepu Play. Następnie ustaw Test DPC jako administratora urządzenia:

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

Krok 2. Włącz powiadomienia o opiniach dotyczących aplikacji

W menu Test DPC włącz Powiadomienia o opiniach o aplikacji.

włącz powiadomienia

Wywoływanie zdarzenia, które ustawia stan aplikacji z kluczem. Jeśli test się powiedzie, DPC wyświetli opinię w powiadomieniach:

wyświetlana opinia