Firebase Test Lab আপনাকে বিভিন্ন ডিভাইস এবং কনফিগারেশনে আপনার অ্যাপের মান পরীক্ষা করতে দেয়। এই নির্দেশিকাটি Test Lab মূল ধারণা, iOS অফার এবং পরীক্ষা শুরু করার নির্দেশাবলীর একটি সারসংক্ষেপ প্রদান করে।
Test Lab কোটা এবং মূল্য নির্ধারণের পরিকল্পনা সম্পর্কে তথ্যের জন্য, ব্যবহার, কোটা এবং মূল্য নির্ধারণ দেখুন।
মূল ধারণা এবং পরিভাষা
যখন আপনি আপনার নির্বাচিত ডিভাইস এবং কনফিগারেশনের বিরুদ্ধে একটি পরীক্ষা বা পরীক্ষার কেসের একটি সেট চালান, তখন Test Lab আপনার অ্যাপের বিরুদ্ধে একটি ব্যাচে পরীক্ষা চালায়, তারপর ফলাফলগুলিকে একটি পরীক্ষা ম্যাট্রিক্স হিসাবে প্রদর্শন করে।
ডিভাইস × পরীক্ষা সম্পাদন = পরীক্ষা ম্যাট্রিক্স
- যন্ত্র
- একটি ফিজিক্যাল বা ভার্চুয়াল ডিভাইস (শুধুমাত্র অ্যান্ড্রয়েড) যার মাধ্যমে আপনি পরীক্ষা চালান, যেমন একটি ফোন, ট্যাবলেট, অথবা পরিধেয় ডিভাইস। একটি টেস্ট ম্যাট্রিক্সের ডিভাইসগুলি ডিভাইস মডেল, OS সংস্করণ, স্ক্রিন ওরিয়েন্টেশন এবং লোকেল (যা ভূগোল এবং ভাষা সেটিংস নামেও পরিচিত) দ্বারা চিহ্নিত করা হয়।
- পরীক্ষা, পরীক্ষা সম্পাদন
- একটি ডিভাইসে চালানোর জন্য একটি পরীক্ষা (অথবা পরীক্ষার কেসের একটি সেট)। আপনি প্রতিটি ডিভাইসে একটি পরীক্ষা চালাতে পারেন, অথবা ঐচ্ছিকভাবে পরীক্ষাটি ভাগ করে বিভিন্ন ডিভাইসে এর পরীক্ষার কেস চালাতে পারেন।
- টেস্ট ম্যাট্রিক্স
- আপনার পরীক্ষা সম্পাদনের জন্য স্ট্যাটাস এবং পরীক্ষার ফলাফল ধারণ করে। যদি একটি ম্যাট্রিক্সে কোনও পরীক্ষা সম্পাদন ব্যর্থ হয়, তাহলে পুরো ম্যাট্রিক্স ব্যর্থ হয়।
ধাপ ১ : Test Lab আপলোড করার জন্য আপনার পরীক্ষা প্রস্তুত করুন।
আপনি Test Lab দিয়ে নিম্নলিখিত পরীক্ষাগুলি চালাতে পারেন। মনে রাখবেন যে সমস্ত পরীক্ষার ধরণগুলি ভৌত ডিভাইসে সর্বোচ্চ 45 মিনিট পর্যন্ত চলতে পারে এবং যে কোনও অপ্রত্যাশিত ব্যতিক্রম পরীক্ষা ব্যর্থতার কারণ হতে পারে।
XCTest (XCUITests সহ) : XCTest ফ্রেমওয়ার্ক ব্যবহার করে আপনি যে ইউনিট পরীক্ষাটি লিখেছেন। Test Lab দিয়ে চালানোর জন্য XCTest কীভাবে পরিবর্তন করবেন তার নির্দেশাবলীর জন্য Create an XCTest দেখুন।
গেম লুপ পরীক্ষা : গেমিং অ্যাপগুলিতে খেলোয়াড়দের অ্যাকশন সিমুলেট করার জন্য একটি "ডেমো মোড" ব্যবহার করে এমন একটি পরীক্ষা। এটি আপনার গেমটি ব্যবহারকারীদের জন্য ভাল পারফর্ম করে কিনা তা যাচাই করার একটি দ্রুত এবং স্কেলেবল উপায়। যখন আপনি একটি গেম লুপ পরীক্ষা চালানোর সিদ্ধান্ত নেন, তখন আপনি যা করতে পারেন:
আপনার গেম ইঞ্জিনের জন্য নেটিভ পরীক্ষা লিখুন।
বিভিন্ন UI বা টেস্টিং ফ্রেমওয়ার্কের জন্য একই কোড লেখা এড়িয়ে চলুন।
ঐচ্ছিকভাবে, একটি একক পরীক্ষামূলক সম্পাদনে চালানোর জন্য একাধিক লুপ তৈরি করুন। আপনি লেবেল ব্যবহার করে লুপগুলি সংগঠিত করতে পারেন যাতে আপনি সেগুলির ট্র্যাক রাখতে পারেন এবং নির্দিষ্ট লুপগুলি পুনরায় চালাতে পারেন।
Test Lab আপনার পরীক্ষা কীভাবে চালাবেন তার নির্দেশাবলীর জন্য রান আ গেম লুপ টেস্ট দেখুন।
ধাপ ২ : আপনার পরীক্ষা চালানোর জন্য একটি টুল বেছে নিন
আপনার পরীক্ষা চালানোর জন্য আপনি নিম্নলিখিত সরঞ্জামগুলি বেছে নিতে পারেন:
Firebase কনসোল আপনাকে একটি অ্যাপ আপলোড করতে এবং যেকোনো জায়গা থেকে পরীক্ষা শুরু করতে দেয়। এই টুলটি ব্যবহারের নির্দেশাবলীর জন্য Test with the Firebase কনসোলটি দেখুন।
gcloud কমান্ড লাইন ইন্টারফেস (CLI) আপনাকে কমান্ড লাইন থেকে ইন্টারেক্টিভভাবে পরীক্ষা চালাতে সক্ষম করে এবং আপনার স্বয়ংক্রিয় বিল্ড এবং টেস্টিং প্রক্রিয়ার অংশ হিসেবে স্ক্রিপ্টিংয়ের জন্যও উপযুক্ত। এই টুলটি ব্যবহারের নির্দেশাবলীর জন্য gcloud CLI দিয়ে পরীক্ষা করুন দেখুন।
আসল ডিভাইসে পরীক্ষা করার আগে, আপনার পরীক্ষাটি স্থানীয়ভাবে একটি সিমুলেটরে চালান যাতে নিশ্চিত হন যে এটি উদ্দেশ্য অনুসারে কাজ করে। নির্দেশাবলীর জন্য স্থানীয়ভাবে পরীক্ষা করুন দেখুন।
ধাপ ৩ : পরীক্ষার ডিভাইসগুলি নির্দিষ্ট করুন
Test Lab এর সাহায্যে, আপনি Google ডেটা সেন্টারে হোস্ট করা বিস্তৃত iOS ডিভাইস এবং মডেলগুলিতে আপনার অ্যাপের বিরুদ্ধে পরীক্ষা চালাতে পারেন। আরও জানতে, উপলব্ধ ডিভাইসগুলি দেখুন।
ধাপ ৪ : পরীক্ষার ফলাফল পর্যালোচনা করুন
আপনি যেভাবেই পরীক্ষা শুরু করুন না কেন, আপনার সমস্ত পরীক্ষার ফলাফল Test Lab দ্বারা পরিচালিত হয় এবং অনলাইনে দেখা যেতে পারে।
পরীক্ষার ফলাফলের সারাংশ স্বয়ংক্রিয়ভাবে সংরক্ষণ করা হয় এবং Firebase কনসোলে দেখা যেতে পারে। এতে আপনার পরীক্ষার জন্য সবচেয়ে প্রাসঙ্গিক ডেটা থাকে, যার মধ্যে রয়েছে পরীক্ষার কেস-নির্দিষ্ট ভিডিও, স্ক্রিনশট, কতগুলি পরীক্ষায় উত্তীর্ণ, ব্যর্থ বা অকার্যকর ফলাফল পাওয়া গেছে এবং আরও অনেক কিছু।
কাঁচা পরীক্ষার ফলাফলে পরীক্ষার লগ এবং অ্যাপ ব্যর্থতার বিবরণ থাকে এবং এটি স্বয়ংক্রিয়ভাবে একটি Google ক্লাউড বাকেটে সংরক্ষণ করা হয়। আপনি যদি একটি বাকেট নির্দিষ্ট করেন, তাহলে স্টোরেজের খরচের জন্য আপনি দায়ী। আপনি যদি একটি বাকেট নির্দিষ্ট না করেন, Test Lab আপনার জন্য বিনামূল্যে একটি তৈরি করে।
আরও বিস্তারিত জানার জন্য, Firebase Test Lab ফলাফল বিশ্লেষণ দেখুন।
ডিভাইস পরিষ্কার করা
গুগল আপনার অ্যাপ ডেটার নিরাপত্তাকে অত্যন্ত গুরুত্ব সহকারে নেয়। আমরা প্রতিটি পরীক্ষা চালানোর পরে অ্যাপ ডেটা অপসারণ এবং ফিজিক্যাল ডিভাইসগুলির সিস্টেম সেটিংস রিসেট করার জন্য শিল্প-মানের সেরা অনুশীলনগুলি অনুসরণ করি যাতে নিশ্চিত করা যায় যে তারা নতুন পরীক্ষা চালানোর জন্য প্রস্তুত। যেসব ডিভাইসে আমরা কাস্টম পুনরুদ্ধার চিত্র দিয়ে ফ্ল্যাশ করতে পারি, তাদের জন্য আমরা পরীক্ষা চালানোর মধ্যে এই ডিভাইসগুলিকে ফ্ল্যাশ করে আরও এক ধাপ এগিয়ে যাই।
Test Lab দ্বারা ব্যবহৃত ভার্চুয়াল ডিভাইসগুলির জন্য, ডিভাইসের উদাহরণগুলি ব্যবহারের পরে মুছে ফেলা হয় যাতে প্রতিটি পরীক্ষা চালানো একটি নতুন ভার্চুয়াল ডিভাইসের উদাহরণ ব্যবহার করে।
Test Lab ডিভাইসগুলিকে ব্যক্তিগত ব্যাকএন্ড সার্ভারগুলিতে অ্যাক্সেসের অনুমতি দেওয়া হচ্ছে
পরীক্ষার সময় সঠিকভাবে কাজ করার জন্য কিছু মোবাইল অ্যাপের ব্যক্তিগত ব্যাকএন্ড পরিষেবার সাথে যোগাযোগের প্রয়োজন হয়। যদি আপনার ব্যাকএন্ড সার্ভারগুলি ফায়ারওয়াল নিয়ম দ্বারা সুরক্ষিত থাকে, তাহলে আপনি আপনার ফায়ারওয়ালের মাধ্যমে রুটগুলি খুলতে নীচের আইপি ঠিকানা ব্লকগুলি ব্যবহার করে Test Lab ভৌত এবং ভার্চুয়াল ডিভাইসগুলির জন্য অ্যাক্সেসের অনুমতি দিতে পারেন।
মোবাইল বিজ্ঞাপন
Test Lab একটি স্কেলেবল অবকাঠামো প্রদান করে যা অ্যাপ টেস্টিংকে স্বয়ংক্রিয় করে, এবং দুর্ভাগ্যবশত, এই ক্ষমতাটি জালিয়াতিপূর্ণ বিজ্ঞাপন আয় তৈরির জন্য ডিজাইন করা ক্ষতিকারক অ্যাপগুলি দ্বারা অপব্যবহার করা যেতে পারে।
এই সমস্যাটি কমাতে:
আপনি যদি তৃতীয় পক্ষের ডিজিটাল বিজ্ঞাপন প্রদানকারী (উদাহরণস্বরূপ, বিজ্ঞাপন নেটওয়ার্ক বা চাহিদা-সাইড প্ল্যাটফর্ম) ব্যবহার করেন বা তাদের সাথে কাজ করেন, তাহলে অ্যাপ ডেভেলপমেন্ট এবং পরীক্ষার সময় আপনাকে আসল বিজ্ঞাপনের পরিবর্তে পরীক্ষামূলক বিজ্ঞাপন ব্যবহার করার পরামর্শ দেওয়া হচ্ছে।
যদি আপনার পরীক্ষায় বাস্তব বিজ্ঞাপন ব্যবহার করতেই হয়, তাহলে নিচের আইপি অ্যাড্রেস ব্লক ব্যবহার করে Test Lab থেকে উৎপন্ন আয় এবং সংশ্লিষ্ট সমস্ত ট্র্যাফিক ফিল্টার করার জন্য আপনার সাথে কাজ করা ডিজিটাল বিজ্ঞাপন প্রদানকারীদের অবহিত করুন। আপনাকে গুগলের মালিকানাধীন বিজ্ঞাপন প্রদানকারীদের অবহিত করার প্রয়োজন নেই; Test Lab আপনার জন্য এটির যত্ন নেয়।
Test Lab ডিভাইসগুলিতে ব্যবহৃত আইপি ঠিকানাগুলি
Test Lab ডিভাইস দ্বারা উৎপন্ন সমস্ত নেটওয়ার্ক ট্র্যাফিক নিম্নলিখিত আইপি অ্যাড্রেস ব্লকগুলি থেকে আসে। আপনি gcloud CLI-তে gcloud beta firebase test ip-blocks list কমান্ড ব্যবহার করেও এই তালিকাটি অ্যাক্সেস করতে পারেন। তালিকাটি গড়ে বছরে একবার আপডেট করা হয়।
| প্ল্যাটফর্ম এবং ডিভাইসের ধরণ | CIDR আইপি অ্যাড্রেস ব্লক |
|---|---|
| অ্যান্ড্রয়েড এবং আইওএস ফিজিক্যাল ডিভাইস, আর্ম ভার্চুয়াল ডিভাইস | ৭০.৩২.১২৮.০/১৯ (যোগ করা হয়েছে ০২-২০২২) ১০৮.১৭৭.৬.০/২৩ ১০৮.১৭৭.১৮.১৯২/২৬ (০২-২০২২ তারিখে যোগ করা হয়েছে) ১০৮.১৭৭.২৯.৬৪/২৭ (০২-২০২২ তারিখে সম্প্রসারিত) ১০৮.১৭৭.৩১.১৬০/২৭ (০২-২০২২ তারিখে যোগ করা হয়েছে) ১৯৯.৩৬.১৫৬.৮/২৯ (যোগ করা হয়েছে ০২-২০২২) ১৯৯.৩৬.১৫৬.১৬/২৮ (যোগ করা হয়েছে ০২-২০২২) ২০৯.৮৫.১৩১.০/২৭ (যোগ করা হয়েছে ০২-২০২২) ২০০১:৪৮৬০:১০০৮::/৪৮ (যোগ করা হয়েছে ০২-২০২২) ২০০১:৪৮৬০:১০১৮::/৪৮ (যোগ করা হয়েছে ০২-২০২২) ২০০১:৪৮৬০:১০১৯::/৪৮ (যোগ করা হয়েছে ০২-২০২২) ২০০১:৪৮৬০:১০২০::/৪৮ (যোগ করা হয়েছে ০২-২০২২) ২০০১:৪৮৬০:১০২২::/৪৮ (যোগ করা হয়েছে ০২-২০২২) ২০০১:৪৮৬০:১০১d::/৪৮ (১০-২০২৫ তারিখে যোগ করা হয়েছে) ২০০১:৪৮৬০:১০১ই::/৪৮ (১০-২০২৫ তারিখে যোগ করা হয়েছে) ২০০১:৪৮৬০:১০৩১::/৪৮ (১০-২০২৫ তারিখে যোগ করা হয়েছে) ৭০.৩২.১২৮.৪৮/২৮ (০৪-২০২৪ তারিখে যোগ করা হয়েছে) ৭০.৩২.১৫০.১৯২/২৭ (০৯-২০২৫ তারিখে যোগ করা হয়েছে) ১০৮.১৭৭.৬.০/২৭ (০৯-২০২৫ তারিখে যোগ করা হয়েছে) ১০৮.১৭৭.২৪.১৬০/২৭ (০৯-২০২৫ তারিখে যোগ করা হয়েছে) ১০৮.১৭৭.২৯.০/২৭ (০৯-২০২৫ তারিখে যোগ করা হয়েছে) |
| অ্যান্ড্রয়েড ভার্চুয়াল ডিভাইস (নন-আর্ম) | ৩৪.৬৮.১৯৪.৬৪/২৯ (১১-২০১৯ তারিখে যোগ করা হয়েছে) ৩৪.৬৯.২৩৪.৬৪/২৯ (১১-২০১৯ তারিখে যোগ করা হয়েছে) ৩৪.৭৩.৩৪.৭২/২৯ (১১-২০১৯ তারিখে যোগ করা হয়েছে) ৩৪.৭৩.১৭৮.৭২/২৯ (১১-২০১৯ তারিখে যোগ করা হয়েছে) ৩৪.৭৪.১০.৭২/২৯ (যোগ করা হয়েছে ০২-২০২২) ৩৪.১৩৬.২.১৩৬/২৯ (যোগ করা হয়েছে ০২-২০২২) ৩৪.১৩৬.৫০.১৩৬/২৯ (যোগ করা হয়েছে ০২-২০২২) ৩৪.১৪৫.২৩৪.১৪৪/২৯ (যোগ করা হয়েছে ০২-২০২২) ৩৫.১৯২.১৬০.৫৬/২৯ ৩৫.১৯৬.১৬৬.৮০/২৯ ৩৫.১৯৬.১৬৯.২৪০/২৯ ৩৫.২০৩.১২৮.০/২৮ ৩৫.২৩৪.১৭৬.১৬০/২৮ ৩৫.২৪৩.২.০/২৭ (৭-২০১৯ তারিখে যোগ করা হয়েছে) ৩৫.২৪৫.২৪৩.২৪০/২৯ (যোগ করা হয়েছে ০২-২০২২) ১৯৯.১৯২.১১৫.০/৩০ ১৯৯.১৯২.১১৫.৮/৩০ ১৯৯.১৯২.১১৫.১৬/২৯ |
| ডিভাইসের আইপি-ব্লকগুলি আর ব্যবহার করা হচ্ছে না | ৭৪.১২৫.১২২.৩২/২৯ (০২-২০২২ তারিখে সরানো হয়েছে) ২১৬.২৩৯.৪৪.২৪/২৯ (০২-২০২২ তারিখে সরানো হয়েছে) |