ตั้งค่าการทดสอบ 1 หน่วย
ส่วนนี้จะแสดงตัวอย่างวิธีตั้งค่าการทดสอบ 1 หน่วยเพื่อตรวจสอบว่าแอปของคุณโต้ตอบกับ สถานะแอปหลักตามที่คาดไว้
ขั้นตอนที่ 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 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); } }
ถัดไป ให้ใช้ KeyedAppStatesReporter.create
เพื่อรับอินสแตนซ์ที่จะส่งผ่าน
ทุกๆ ที่ที่มีการสร้าง BatteryManager
ขั้นตอนที่ 2: เพิ่มไลบรารีการทดสอบความคิดเห็นขององค์กรลงในไฟล์ build.gradle
เพิ่มทรัพยากร Dependency ต่อไปนี้ในแอป
ไฟล์ 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 ทดสอบ
ติดตั้ง Test DPC เวอร์ชันล่าสุด จาก Play Store ถัดไป ให้ตั้งค่า Test DPC เป็นผู้ดูแลระบบของอุปกรณ์โดยทำดังนี้
adb shell dpm set-device-owner com.afwsamples.testdpc/.DeviceAdminReceiver
ขั้นตอนที่ 2: เปิดใช้การแจ้งเตือนความคิดเห็นเกี่ยวกับแอป
เปิดใช้การแจ้งเตือนความคิดเห็นของแอปในเมนูของ Test DPC
ทริกเกอร์เหตุการณ์ที่ตั้งสถานะแอปคีย์ หากสำเร็จ DPC ทดสอบจะปรากฏขึ้น ความคิดเห็นในการแจ้งเตือน