Firebase Test Lab অ্যান্ড্রয়েড অ্যাপ পরীক্ষার জন্য ক্লাউড-ভিত্তিক পরিকাঠামো প্রদান করে এবং ইনস্ট্রুমেন্টেড টেস্ট চালানো ও পরীক্ষার ফলাফল পর্যালোচনার জন্য অ্যান্ড্রয়েড স্টুডিও-এর সাথে এর পূর্ণাঙ্গ ইন্টিগ্রেশন রয়েছে।
এই নির্দেশিকায় বর্ণনা করা হয়েছে কীভাবে অ্যান্ড্রয়েড স্টুডিওতে ইন্সট্রুমেন্টেড টেস্টগুলো পরিবর্তন করতে হয়, যাতে আপনি সেগুলোকে Test Lab সাথে একীভূত ও চালাতে পারেন। অ্যান্ড্রয়েড স্টুডিও UI থেকে Test Lab ব্যবহার করে কীভাবে একটি টেস্ট ম্যাট্রিক্স তৈরি করতে, একটি ইন্সট্রুমেন্টেড টেস্ট চালাতে এবং পরীক্ষার ফলাফল দেখতে হয়, তার নির্দেশাবলীর জন্য Firebase Test Lab দিয়ে আপনার টেস্ট চালান" দেখুন।
স্ক্রিনশট ক্যাপচার করুন
ইন্সট্রুমেন্টেড টেস্ট চালানোর সময় স্ক্রিনশট নেওয়ার সুবিধা Test Lab প্রদান করে। কীভাবে স্ক্রিনশট নিতে হয় তা জানতে, আপনার প্রোজেক্টে স্ক্রিনশট লাইব্রেরি যোগ করুন দেখুন।
Espresso Test Recorder ব্যবহার করে পরীক্ষা তৈরি করুন
এসপ্রেসো টেস্ট রেকর্ডার টুলটি আপনাকে কোনো টেস্ট কোড না লিখেই আপনার অ্যাপের জন্য UI টেস্ট তৈরি করতে দেয়। আপনি একটি ডিভাইসের সাথে আপনার ইন্টারঅ্যাকশন রেকর্ড করতে পারেন এবং আপনার অ্যাপের নির্দিষ্ট স্ন্যাপশটগুলিতে UI এলিমেন্টগুলি যাচাই করার জন্য অ্যাসারশন যোগ করতে পারেন। এরপর এসপ্রেসো টেস্ট রেকর্ডার সংরক্ষিত রেকর্ডিংটি নিয়ে স্বয়ংক্রিয়ভাবে একটি সংশ্লিষ্ট এসপ্রেসো UI টেস্ট তৈরি করে, যা আপনি Test Lab আপনার অ্যাপ পরীক্ষা করার জন্য চালাতে পারেন।
আরও জানতে, “Espresso Test Recorder দিয়ে UI টেস্ট তৈরি করুন” দেখুন।
Test Lab জন্য যন্ত্রচালিত পরীক্ষার আচরণ পরিবর্তন করুন
Test Lab একটি সিস্টেম ভেরিয়েবল প্রদান করে যা আপনি আপনার ইনস্ট্রুমেন্টেড টেস্টগুলোতে যোগ করতে পারেন, যাতে সেগুলোকে আপনার নিজস্ব টেস্ট ডিভাইস বা এমুলেটরে চালানোর চেয়ে Test Lab চালানোর সময় ভিন্নভাবে আচরণ করানো যায়।
নিম্নলিখিত কোড উদাহরণটি firebase.test.lab নামক একটি সিস্টেম প্রপার্টি পড়ে এবং টেস্টটি Test Lab চললে testLabSetting নামক একটি স্ট্রিং-এর মান true সেট করে। এরপর, এটি অতিরিক্ত স্টেটমেন্টগুলো এক্সিকিউট হবে কিনা তা নিয়ন্ত্রণ করতে এই স্ট্রিংটির মান ব্যবহার করে:
Kotlin
val testLabSetting = Settings.System.getString(contentResolver, "firebase.test.lab") if ("true" == testLabSetting) { // Do something when running in Test Lab // ... }
Java
String testLabSetting = Settings.System.getString(getContentResolver(), "firebase.test.lab"); if ("true".equals(testLabSetting)) { // Do something when running in Test Lab // ... }
Firebase Test Lab প্লাগইনের মাধ্যমে গ্রেডল ম্যানেজড ডিভাইস ব্যবহার করুন
Firebase Test Lab প্লাগইনের মাধ্যমে Gradle Managed Devices আপনাকে আপনার প্রোজেক্টের Gradle ফাইলের কনফিগারেশনের উপর ভিত্তি করে Test Lab ডিভাইসগুলিতে বৃহৎ পরিসরে স্বয়ংক্রিয় ইনস্ট্রুমেন্টেড টেস্ট চালানোর সুযোগ দেয়।
গ্রেডল ম্যানেজড ডিভাইস স্মার্ট শার্ডিং-এর সুবিধাও দেয়, যা আপনাকে আপনার পূর্ববর্তী টেস্ট হিস্টোরির উপর ভিত্তি করে শার্ডগুলোর মধ্যে টেস্টগুলোকে সর্বোত্তমভাবে বন্টন করতে দেয়। স্মার্ট শার্ডিং-এর মাধ্যমে, শার্ডগুলো প্রায় একই সময় ধরে চলে এবং যত দ্রুত সম্ভব টেস্টের ফলাফল প্রদান করে। স্মার্ট শার্ডিং আপনাকে বড় টেস্ট স্যুটগুলো সমান্তরালভাবে চালানোর সুযোগ দেয়, যা এই ফিচারটিকে CI/CD ফ্লো-এর জন্য অত্যন্ত উপযোগী করে তোলে।
Gradle Managed Devices Test Lab প্লাগইন ব্যবহার করে স্মার্ট শার্ডিং সক্রিয় করতে, “Optimize test runs with smart sharding” -এর নির্দেশাবলী অনুসরণ করুন।