টেস্ট হারনেস মোড হল অ্যান্ড্রয়েড 10-এ যুক্ত করা একটি বৈশিষ্ট্য যা তৃতীয় পক্ষের অ্যাপ ডেভেলপারদের জন্য যারা একটি ডিভাইস বা ডিভাইসের একটি বহর স্বয়ংক্রিয় করতে চায়। বৈশিষ্ট্যটি একটি অ্যান্ড্রয়েড ডিভাইসে সমস্ত ব্যবহারকারীর ডেটা মুছে ফেলার, ADB কীগুলিকে ধরে রাখার এবং সমস্ত প্রথম-বারের সেটআপ স্ক্রিনগুলি এড়িয়ে যাওয়ার একটি পদ্ধতি সরবরাহ করে৷ এটি ব্যবহারকারীকে কোনো ম্যানুয়াল ইন্টারঅ্যাকশন ছাড়াই স্টার্টআপের পরপরই একটি UI পরীক্ষা চালাতে সক্ষম করে।
কাস্টমাইজেশন
আপনি ActivityManager.isRunningInUserTestHarness()
চেক করে একটি ডিভাইস টেস্ট হারনেস মোডে আছে কিনা তা নির্ধারণ করতে পারেন। সর্বনিম্ন কাস্টমাইজেশন রাখুন; সেটআপ স্ক্রীন (কীবোর্ড বা সেটআপ উইজার্ডে) এড়িয়ে যাওয়ার মতো জিনিসগুলিতে সীমাবদ্ধ করুন যা UI পরীক্ষাগুলিকে ভঙ্গ করবে বা ম্যানুয়াল ইন্টারঅ্যাকশনের প্রয়োজন হবে৷
বাস্তবায়ন
PersistentDataBlockManagerInternal
এর ডিফল্ট বাস্তবায়ন PersistentDataBlockService
এ রয়েছে। টেস্ট হারনেস মোড TestHarnessModeService
এ প্রয়োগ করা হয়েছে।
টেস্ট হারনেস মোডের ডিফল্ট প্রয়োগটি একটি স্থায়ী পার্টিশনে অস্থায়ীভাবে অ্যাডবি কীগুলি সংরক্ষণ করতে ফ্যাক্টরি রিসেট সুরক্ষা হিসাবে একই স্টোরেজ পদ্ধতি ব্যবহার করে। ফ্যাক্টরি রিসেট সুরক্ষা সহ একটি অবিচ্ছিন্ন পার্টিশন ইতিমধ্যে পরীক্ষা ডিভাইসে প্রয়োগ করা হলে, বৈশিষ্ট্যটিকে সমর্থন করার জন্য সামান্য থেকে কোন কাজ করার প্রয়োজন নেই।
যে OEMগুলির একটি স্থায়ী পার্টিশন সেট আপ নেই তাদের TestHarnessModeService
চালানোর আগে PersistentDataBlockManagerInternal
প্রয়োগ করতে হবে।
টেস্ট হারনেস মোডের অবস্থা পরীক্ষা করুন
যখন টেস্ট হারনেস মোড সক্রিয় করা হয়, ActivityManager.isRunningInUserTestHarness()
true
দেখায়।
টেস্ট হারনেস মোড চালান
টেস্ট হারনেস মোড সক্ষম করলে ডিভাইস থেকে সমস্ত ডেটা মুছে যায় এবং ডিভাইসটিকে পরীক্ষার জন্য সেট আপ করে৷ এর মানে হল যে ডিভাইসের সমস্ত অংশ যা পরীক্ষায় হস্তক্ষেপ করতে পারে (যেমন স্বয়ংক্রিয়-সিঙ্কিং অ্যাকাউন্ট, প্যাকেজ যাচাইকরণ, এবং স্বয়ংক্রিয় আপডেট) সবগুলি ডিফল্টরূপে অক্ষম থাকে তবে ব্যবহারকারী সেগুলি পুনরায় সক্ষম করতে পারেন।
টেস্ট হারনেস মোড সক্ষম করতে adb
কমান্ড চালান:
adb shell cmd testharness enable