আপনার অ্যান্ড্রয়েড অ্যাপে টেস্ট চালানোর জন্য Firebase Test Lab ব্যবহার করার একাধিক উপায় রয়েছে, যার মধ্যে আছে কমান্ড লাইন ইন্টারফেস , অ্যান্ড্রয়েড স্টুডিও , Firebase কনসোলের Test Lab UI , এবং টেস্টিং এপিআই । আপনি যেভাবেই আপনার টেস্ট শুরু করুন না কেন, ফলাফলগুলো আপনার নির্দিষ্ট করা ফায়ারবেস প্রজেক্টে সংরক্ষিত হয়। উপরের যেকোনো টুলের পাশাপাশি আপনি টুলরেজাল্টস এপিআই ব্যবহার করে ফলাফলগুলো খতিয়ে দেখতে পারেন। এই পৃষ্ঠায় এই টেস্টের ফলাফলগুলো কীভাবে পর্যালোচনা ও বিশ্লেষণ করতে হয় তা বর্ণনা করা হয়েছে।
মূল ধারণা
আপনার পূর্ববর্তী সমস্ত টেস্ট রানের ফলাফল দেখতে, Firebase কনসোলে আপনার প্রজেক্টের বাম দিকের নেভিগেশন প্যানেল থেকে Test Lab নির্বাচন করুন। এই পৃষ্ঠাটিতে সেই সমস্ত অ্যাপের টেস্ট রান দেখানো হয়, যেগুলো আপনি Test Lab ব্যবহার করে আপনার প্রজেক্টের মাধ্যমে পরীক্ষা করেছেন।
পরীক্ষার ফলাফল পর্যালোচনা করতে হলে, আপনাকে প্রথমে তিনটি ধারণা বুঝতে হবে:
আপনি যখন আপনার নির্বাচিত ডিভাইস এবং কনফিগারেশনগুলোর ওপর কোনো টেস্ট বা টেস্ট কেসের সেট চালান, তখন Test Lab আপনার অ্যাপের ওপর টেস্টটি ব্যাচ আকারে চালায় এবং তারপর ফলাফলগুলো একটি টেস্ট ম্যাট্রিক্স হিসেবে প্রদর্শন করে।
ডিভাইস × পরীক্ষা সম্পাদন = টেস্ট ম্যাট্রিক্স
- ডিভাইস
- একটি ভৌত বা ভার্চুয়াল ডিভাইস (শুধুমাত্র অ্যান্ড্রয়েড) যেখানে আপনি একটি পরীক্ষা চালান, যেমন একটি ফোন, ট্যাবলেট বা পরিধানযোগ্য ডিভাইস। একটি টেস্ট ম্যাট্রিক্সের ডিভাইসগুলিকে ডিভাইসের মডেল, ওএস সংস্করণ, স্ক্রিন ওরিয়েন্টেশন এবং লোকেল (যা ভূগোল এবং ভাষার সেটিংস নামেও পরিচিত) দ্বারা চিহ্নিত করা হয়।
- পরীক্ষা, পরীক্ষা সম্পাদন
- একটি ডিভাইসে চালানোর জন্য একটি টেস্ট (বা একাধিক টেস্ট কেসের একটি সেট)। আপনি প্রতি ডিভাইসে একটি করে টেস্ট চালাতে পারেন, অথবা চাইলে টেস্টটিকে শার্ড করে এর টেস্ট কেসগুলো বিভিন্ন ডিভাইসে চালাতে পারেন।
- টেস্ট ম্যাট্রিক্স
- আপনার টেস্ট এক্সিকিউশনগুলোর স্ট্যাটাস এবং পরীক্ষার ফলাফল এতে থাকে। একটি ম্যাট্রিক্সের কোনো টেস্ট এক্সিকিউশন ব্যর্থ হলে, পুরো ম্যাট্রিক্সটিই ব্যর্থ হয়।
নিম্নলিখিত বিভাগগুলিতে পরীক্ষার ফলাফলে কীভাবে যেতে হয় তা ব্যাখ্যা করা হয়েছে।
পরীক্ষার ইতিহাসের ফলাফল ব্যাখ্যা করুন
Test Lab নির্বাচন করে যখন আপনি আপনার পরীক্ষার ফলাফলে যান, তখন আপনি এ পর্যন্ত চালানো পরীক্ষাগুলোর ফলাফল দেখতে পান।
পরীক্ষার ইতিহাস অ্যাপ অনুযায়ী ভাগ করা হয়েছে। প্রতিটি অ্যাপের জন্য শুধুমাত্র সাম্প্রতিকতম পাঁচটি টেস্ট ম্যাট্রিক্স দেখানো হয়; যদি আরও থাকে, তবে সেই অ্যাপের সম্পূর্ণ তালিকা দেখতে আপনি অ্যাপ পরীক্ষার তালিকার নীচে থাকা ' সমস্ত ম্যাট্রিক্স' লিঙ্কে ক্লিক করতে পারেন।
পরীক্ষার ম্যাট্রিক্সের ফলাফল ব্যাখ্যা করুন
Test Lab UI-এর মাধ্যমে কোনো টেস্ট শুরু করলে, আপনাকে এমন একটি পেজে রিডাইরেক্ট করা হয় যেখানে আপনি আপনার টেস্ট ম্যাট্রিক্স দেখতে পারেন এবং পরীক্ষার ফলাফল দেখার জন্য কোনো নির্দিষ্ট টেস্ট এক্সিকিউশনে ক্লিক করতে পারেন। অ্যান্ড্রয়েড স্টুডিও এবং gcloud কমান্ডও টেস্ট ম্যাট্রিক্স রেজাল্ট পেজের জন্য একটি URL প্রদান করে।
একটি সাধারণ টেস্ট ম্যাট্রিক্সে, আপনি প্রায় এক ডজন ভিন্ন ডিভাইসে একটি পরীক্ষা চালাতে পারেন। প্রতিটি পরীক্ষা সম্পাদনের ফলাফল ভিন্ন হতে পারে। একটি টেস্ট ম্যাট্রিক্সের যেকোনো পরীক্ষা সম্পাদনের সম্ভাব্য ফলাফলগুলো নিম্নরূপ:
- পাস
কোনো ব্যর্থতা দেখা দেয়নি। - ব্যর্থ
অন্তত একটি ব্যর্থতা পরিলক্ষিত হয়েছে। - অনির্দিষ্ট
পরীক্ষার ফলাফল অস্পষ্ট ছিল, সম্ভবত Test Lab ত্রুটির কারণে। - বাদ দেওয়া হয়েছে
ম্যাট্রিক্সের কিছু টেস্ট এক্সিকিউশনের জন্য নির্বাচিত ডাইমেনশন ভ্যালুগুলো সামঞ্জস্যপূর্ণ ছিল না। এটি তখন ঘটে যখন আপনার নির্বাচিত ডিভাইসগুলো আপনার নির্বাচিত এক বা একাধিক অ্যান্ড্রয়েড এপিআই লেভেলের সাথে সামঞ্জস্যপূর্ণ নয়।
আপনার Firebase প্রোজেক্টের কোনো একটি নির্দিষ্ট অ্যাপের সমস্ত টেস্ট ম্যাট্রিক্সের সম্মিলিত পরীক্ষার ফলাফল পর্যালোচনা করতে, অ্যাপটির নামে ক্লিক করুন, যেমনটি নিম্নলিখিত উদাহরণে দেখানো হয়েছে:
মাত্র চারটি টেস্ট এক্সিকিউশন সহ টেস্ট ম্যাট্রিক্স ফলাফল পৃষ্ঠার উদাহরণ। 
এটি আপনাকে আপনার অ্যাপের টেস্ট ম্যাট্রিক্স তালিকায় নিয়ে যাবে, যেখানে আপনি যেকোনো টেস্ট ম্যাট্রিক্সের নামে ক্লিক করে তার ফলাফল দেখতে পারবেন, এবং (নিচের লাল বাক্সে দেখানো) অ্যাপটির নামে ক্লিক করে আপনার ফায়ারবেস প্রজেক্টের সাথে যুক্ত অন্যান্য অ্যাপের টেস্ট ম্যাট্রিক্স তালিকা দেখতে পারবেন।
উদাহরণ পরীক্ষা ম্যাট্রিক্স তালিকা পৃষ্ঠা 
একটি টেস্ট ম্যাট্রিক্স পাস, ফেল বা অমীমাংসিত হতে পারে। একটি টেস্ট ম্যাট্রিক্সকে ফেল বা অমীমাংসিত হিসাবে দেখানো হয় যদি সেই ম্যাট্রিক্সের কোনো টেস্ট এক্সিকিউশন ব্যর্থ হয় বা অমীমাংসিত থাকে।
রোবো পরীক্ষার ফলাফল ব্যাখ্যা করুন
আপনি যদি রোবো দিয়ে আপনার পরীক্ষাগুলো চালিয়ে থাকেন, তাহলে সাধারণ পরীক্ষার মেট্রিকগুলোর পাশাপাশি আপনার ফলাফলে রোবোর UI ক্রল করার ভিডিও এবং স্ক্রিনশটও অন্তর্ভুক্ত থাকে। সেই ভিডিও এবং স্ক্রিনশটগুলোতে ক্রল করার সময় রোবোর নেওয়া পদক্ষেপগুলোর ভিজ্যুয়াল ইঙ্গিত থাকে, যা অ্যান্ড্রয়েডের 'শো টাচেস' ফিচারের মতোই। এই ইঙ্গিতগুলো ব্যবহার করে আপনি রোবোর অগ্রগতি অনুসরণ করতে পারেন এবং এর দ্বারা আবিষ্কৃত যেকোনো বাগ পুনরায় তৈরি করতে পারেন।
রোবো পরীক্ষার ফলাফলের ভিডিওর উদাহরণ

একটিমাত্র পরীক্ষা সম্পাদনের ফলাফল ব্যাখ্যা করুন
টেস্ট ম্যাট্রিক্স ফলাফল পৃষ্ঠা থেকে, নির্দিষ্ট টেস্ট এক্সিকিউশনটির ফলাফল দেখতে যেকোনো একটি টেস্ট এক্সিকিউশনের উপর ক্লিক করুন।
পরীক্ষার ফলাফল পৃষ্ঠার উদাহরণ 
এই পৃষ্ঠায়, আপনি প্রতিটি টেস্ট সম্পাদনের জন্য প্রয়োজনীয় সময় দেখতে পারেন। এছাড়াও আপনি আপনার টেস্ট APK-তে থাকা মেথডগুলোর সাথে সম্পর্কিত নির্দিষ্ট টেস্ট কেসগুলোর ফলাফল (ইনস্ট্রুমেন্টেশন টেস্টের জন্য) এবং টেস্ট লগ, স্ক্রিনশট ও ভিডিও সহ বিস্তারিত পরীক্ষার ফলাফল দেখতে পারেন। রোবো টেস্টের ক্ষেত্রে, বিস্তারিত পরীক্ষার ফলাফলে একটি অ্যাক্টিভিটি ম্যাপও অন্তর্ভুক্ত থাকে, যা গ্রাফিকভাবে রোবো টেস্ট দ্বারা পরিদর্শিত UI পাথগুলো দেখায়।
পার্টিশন করা ইন্সট্রুমেন্টেশন পরীক্ষার ফলাফল
ইনস্ট্রুমেন্টেড টেস্টের ফলাফল ব্যাখ্যা করতে আপনাকে সাহায্য করার জন্য, Test Lab প্রতিটি টেস্টকে তার নিজস্ব বিস্তারিত রিপোর্ট পেজে আলাদা করে দেখায়, যেখানে স্ট্যাক ট্রেস, লগ এবং ভিডিও সহ সবকিছুই থাকে। আপনি অ্যান্ড্রয়েড অর্কেস্ট্রেটর ব্যবহার করুন বা না করুন, এই ফিচারটি কাজ করে।
উদাহরণ টেস্টকেস ফলাফল পৃষ্ঠা 
অ্যাক্সেসযোগ্যতার ফলাফল ব্যাখ্যা করুন
রোবো টেস্ট আপনার অ্যাপের অ্যাক্সেসিবিলিটি সমস্যা শনাক্ত করতে অ্যান্ড্রয়েড অ্যাক্সেসিবিলিটি স্ক্যানার ব্যবহার করে (উল্লেখ্য যে, আপনি আপনার ডিভাইসে স্থানীয়ভাবেও একটি স্ক্যান চালাতে পারেন)। আপনার রোবো টেস্টের অ্যাক্সেসিবিলিটি ফলাফল কীভাবে পর্যালোচনা ও ব্যাখ্যা করবেন, তার নির্দেশাবলীর জন্য ‘অ্যাক্সেসিবিলিটি স্ক্যানার দিয়ে শুরু করুন’ (Get started with Accessibility Scanner ) দেখুন।
আপনার অ্যাপের অ্যাক্সেসিবিলিটি কীভাবে উন্নত করা যায় সে সম্পর্কে সাধারণ তথ্যের জন্য, অ্যান্ড্রয়েড ডেভেলপার অ্যাক্সেসিবিলিটি ডকুমেন্টেশন দেখুন।
কর্মক্ষমতা মেট্রিক্স
ভৌত ডিভাইসে চালানো পরীক্ষাগুলোও পারফরম্যান্স মেট্রিক্স প্রদান করে:
| মেট্রিক | প্রয়োজনীয় ডিভাইস কনফিগারেশন |
|---|---|
| অ্যাপ চালুর সময় | এপিআই ১৯+ |
| সিপিইউ ব্যবহার | এপিআই ২১+ |
| মেমরি ব্যবহার | |
| নেটওয়ার্ক কার্যকলাপ | |
| ফ্রেম প্রতি সেকেন্ড | API 21+ এবং এতে একটি SurfaceView অন্তর্ভুক্ত রয়েছে |
বিস্তারিত পরীক্ষার ফলাফল
একটি টেস্ট চালানোর পর বিস্তারিত পরীক্ষার ফলাফল ৯০ দিনের জন্য পাওয়া যায় এবং এটি একটি Google Cloud Storage বাকেটে সংরক্ষিত থাকে (তবে এটি Firebase কনসোলেও দেখা যায়)। টেস্ট এক্সিকিউশন রেজাল্টস পেজে ‘ টেস্ট রেজাল্টস’ -এ ক্লিক করে আপনি Cloud Storage বাকেটে বিস্তারিত পরীক্ষার ফলাফল দেখতে পারেন। যখন বিস্তারিত পরীক্ষার ফলাফল আর পাওয়া যায় না, তখনও আপনি দেখতে পারবেন কোন টেস্টগুলো পাস করেছে বা ফেল করেছে।
আপনি যদি ৯০ দিনের বেশি সময়ের জন্য বিস্তারিত পরীক্ষার ফলাফল সংরক্ষণ করতে চান, তাহলে আপনি `--results-bucket` gcloud কমান্ড-লাইন অপশনটি ব্যবহার করে এই ফলাফলগুলো আপনার মালিকানাধীন একটি Cloud Storage বাকেটে পাঠাতে পারেন। এরপর, আপনার Cloud Storage বাকেটে ফলাফলগুলো কতদিন সংরক্ষিত থাকবে তা নির্ধারণ করতে আপনি ` Age` সেটিংটি সেট করতে পারেন। `Age` সেটিংটি কীভাবে পরিবর্তন করতে হয় সে সম্পর্কে তথ্যের জন্য `Lifecycle conditions` দেখুন।
টেস্ট চালানোর সময়, যদি আপনি এই ত্রুটিটি পান, does not have storage.objects.create access to the Google Cloud Storage object. Permission 'storage.objects.create' denied on resource (or it may not exist).. , তাহলে টেস্টটি সম্পাদনকারী প্রিন্সিপালের প্রজেক্টে সঠিক অনুমতি নাও থাকতে পারে। ডিফল্টরূপে, Firebase আপনার জন্য Google Cloud Storage-এ একটি বাকেট তৈরি করে, তবে এর জন্য টেস্টটি সম্পাদনকারী প্রিন্সিপালের "roles/editor" থাকা প্রয়োজন, যা একটি অনুমতিমূলক রোল। আপনি যদি প্রিন্সিপালকে সেই রোলটি দিতে না পারেন, তাহলে আপনি --results-bucket gcloud কমান্ড-লাইন অপশনটি ব্যবহার করতে পারেন।