Birim testlerini ayarlama
Bu bölümde, uygulamanızın etkileşimde bulunup bulunmadığını kontrol etmek için birim testlerinin nasıl oluşturulacağına dair örnekler verilmiştir. anahtarlı uygulama durumlarının mevcut olup olmadığını kontrol edin.
1. adım: Sınıflarınızı, parametre olarak KeyedAppStatesReporter
kabul edilecek şekilde ayarlayın
Doğrudan create()
numaralı telefonu aramak yerine sınıflarınızı kabul edecek şekilde değiştirin
BatteryManager
örneğindeki gibi bir parametre olarak KeyedAppStatesReporter
aşağıdaki sınıfı inceleyin:
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 Collectionstates = new HashSet<>(); states.add(KeyedAppState.builder() .setKey("battery") .setSeverity(KeyedAppState.SEVERITY_INFO) .setMessage("Battery is low") .setData(Integer.toString(battery)) .build(); reporter.setStatesImmediate(states); } }
Ardından, geçmek üzere bir örnek almak için KeyedAppStatesReporter.create
kullanın
BatteryManager
oluşturulduğu her yerde.
2. adım: build.gradle
dosyanıza kurumsal geri bildirim testi kitaplığını ekleyin
Aşağıdaki bağımlılığı uygulamanızın
build.gradle
dosyası:
dependencies { testImplementation 'androidx.enterprise:enterprise-feedback-testing:1.0.0' }
3. Adım: Bir FakeKeyedAppStatesReporter
oluşturun ve sınıfınıza iletin
Kotlin
val reporter = FakeKeyedAppStatesReporter(); val batteryManager = BatteryManager(reporter);
Java
FakeKeyedAppStatesReporter reporter = new FakeKeyedAppStatesReporter(); BatteryManager batteryManager = new BatteryManager(reporter);
4. adım: FakeKeyedAppStatesReporter
ile etkileşimleri doğrulayın
Örneğin, hiçbir eyaletin ayarlanıp ayarlanmadığını kontrol etmek için:
Kotlin
assertThat(reporter.keyedAppStates).isEmpty();
Java
assertThat(reporter.getKeyedAppStates()).isEmpty();
Veya belirli bir eyaletin yüklenmesi talep edilmişse:
Kotlin
assertThat(reporter.uploadedKeyedAppStatesByKey["battery"]).isNotNull()
Java
assertThat(reporter.getUploadedKeyedAppStatesByKey().get("battery")).isNotNull();
Test DPC'ye test geri bildirimi gönder
Örnek bir cihaz politikası denetleyici, test DPC adı verilen bir uygulamadır. Uygulama geri bildirimi alabilir ve indirin.
1. adım: Test DPC'yi yükleyin
Test DPC'nin en son sürümünü yükleyin Google Play Store'dan. Ardından Test DPC'yi cihazın yöneticisi olarak ayarlayın:
adb shell dpm set-device-owner com.afwsamples.testdpc/.DeviceAdminReceiver
2. Adım: Uygulama geri bildirim bildirimlerini etkinleştirin
Test DPC'nin menüsünden Uygulama geri bildirim bildirimleri'ni etkinleştirin.
![bildirimleri etkinleştir](https://developer.android.com/static/images/work/test-dpc-screenshot.png?authuser=9&hl=tr)
Anahtarlı uygulama durumu ayarlayan bir etkinliği tetikleyin. İşlem başarılı olursa DPC'yi test et seçeneği gösterilir bildirimlerdeki geri bildirim:
![geri bildirim görüntülendi](https://developer.android.com/static/images/work/feedback-notification.png?authuser=9&hl=tr)