Cómo probar los comentarios sobre la app

Después de actualizar tu app para admitir el envío de comentarios en forma de estados de app con clave, puedes usar la guía de esta página para configurar pruebas de unidades y enviar comentarios de prueba a un controlador de política de dispositivo (DPC) de prueba.

Cómo configurar pruebas de unidades

En esta sección, se proporcionan ejemplos de cómo configurar pruebas de unidades para verificar que tu app interactúe con los estados de la app con clave como se espera.

Paso 1: Configura tus clases para que acepten KeyedAppStatesReporter como parámetro

En lugar de llamar directamente a create(), modifica tus clases para que acepten KeyedAppStatesReporter como parámetro, como en la clase BatteryManager de ejemplo a continuación:

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

A continuación, usa KeyedAppStatesReporter.create para obtener una instancia a fin de pasar donde se cree BatteryManager.

Paso 2: Agrega la biblioteca de pruebas de comentarios para empresas al archivo build.gradle

Agrega la siguiente dependencia al archivo build.gradle de tu app:

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

Paso 3: Crea un FakeKeyedAppStatesReporter y pásalo a la clase

Kotlin

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

Java

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

Paso 4: Confirma las interacciones con FakeKeyedAppStatesReporter

Por ejemplo, para verificar que no se hayan establecido estados, ejecuta el siguiente comando:

Kotlin

assertThat(reporter.keyedAppStates).isEmpty();

Java

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

O bien, que se solicitó la carga de un estado en particular:

Kotlin

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

Java

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

Envía comentarios para probar el DPC

Un controlador de política de dispositivo de muestra, llamado DPC de prueba, puede recibir comentarios sobre la app y está disponible para descargar.

Paso 1: Instala el DPC de prueba

Instala la versión más reciente de Test DPC desde Play Store. Luego, configura Test DPC como administrador del dispositivo:

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

Paso 2: Habilita las notificaciones de comentarios sobre la app

En el menú "Test DPC", habilita App feedback notifications.

habilitar notificaciones

Activar un evento que establezca un estado de app con clave Si se ejecuta de forma correcta, el DPC de prueba mostrará los comentarios en las notificaciones:

comentarios mostrados