ইউনিট পরীক্ষা সেট আপ করুন
এই বিভাগে আপনার অ্যাপটি কীড অ্যাপ স্টেটের সাথে প্রত্যাশিতভাবে ইন্টারঅ্যাক্ট করে কিনা তা পরীক্ষা করতে ইউনিট পরীক্ষাগুলি কীভাবে সেট আপ করতে হয় তার উদাহরণ প্রদান করে।
ধাপ 1: KeyedAppStatesReporter
একটি প্যারামিটার হিসেবে গ্রহণ করতে আপনার ক্লাস সেট আপ করুন
create()
সরাসরি কল করার পরিবর্তে, KeyedAppStatesReporter
প্যারামিটার হিসাবে গ্রহণ করতে আপনার ক্লাসগুলি পরিবর্তন করুন যেমন নীচের BatteryManager
ক্লাসের উদাহরণে: কোটলিন
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())) } }
জাভা
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); } }
এরপরে, যেখানেই BatteryManager
তৈরি করা হয়েছে সেখানে পাস করার জন্য একটি উদাহরণ পেতে KeyedAppStatesReporter.create
ব্যবহার করুন।
ধাপ 2: আপনার build.gradle
ফাইলে এন্টারপ্রাইজ ফিডব্যাক টেস্টিং লাইব্রেরি যোগ করুন
আপনার অ্যাপের build.gradle
ফাইলে নিম্নলিখিত নির্ভরতা যোগ করুন:
dependencies { testImplementation 'androidx.enterprise:enterprise-feedback-testing:1.0.0' }
ধাপ 3: একটি FakeKeyedAppStatesReporter
তৈরি করুন এবং এটি আপনার ক্লাসে পাস করুন
কোটলিন
val reporter = FakeKeyedAppStatesReporter(); val batteryManager = BatteryManager(reporter);
জাভা
FakeKeyedAppStatesReporter reporter = new FakeKeyedAppStatesReporter(); BatteryManager batteryManager = new BatteryManager(reporter);
ধাপ 4: FakeKeyedAppStatesReporter
এর সাথে মিথস্ক্রিয়া জাহির করুন
উদাহরণস্বরূপ, কোনও রাজ্য সেট করা হয়নি তা পরীক্ষা করতে:
কোটলিন
assertThat(reporter.keyedAppStates).isEmpty();
জাভা
assertThat(reporter.getKeyedAppStates()).isEmpty();
অথবা একটি নির্দিষ্ট রাজ্য আপলোড করার জন্য অনুরোধ করা হয়েছে:
কোটলিন
assertThat(reporter.uploadedKeyedAppStatesByKey["battery"]).isNotNull()
জাভা
assertThat(reporter.getUploadedKeyedAppStatesByKey().get("battery")).isNotNull();
টেস্ট ডিপিসিতে পরীক্ষার প্রতিক্রিয়া পাঠান
একটি নমুনা ডিভাইস নীতি নিয়ন্ত্রক , টেস্ট DPC নামক, অ্যাপ প্রতিক্রিয়া পেতে সক্ষম এবং ডাউনলোডের জন্য উপলব্ধ।
ধাপ 1: টেস্ট ডিপিসি ইনস্টল করুন
প্লে স্টোর থেকে টেস্ট ডিপিসির সর্বশেষ সংস্করণ ইনস্টল করুন। এরপরে, ডিভাইসের অ্যাডমিন হিসাবে টেস্ট ডিপিসি সেট করুন:
adb shell dpm set-device-owner com.afwsamples.testdpc/.DeviceAdminReceiver
ধাপ 2: অ্যাপ প্রতিক্রিয়া বিজ্ঞপ্তি সক্ষম করুন
টেস্ট ডিপিসির মেনুতে, অ্যাপ প্রতিক্রিয়া বিজ্ঞপ্তিগুলি সক্ষম করুন৷
একটি ইভেন্ট ট্রিগার করে যা একটি কীড অ্যাপের অবস্থা সেট করে। সফল হলে, টেস্ট ডিপিসি বিজ্ঞপ্তিতে প্রতিক্রিয়া দেখাবে: