Check out what’s new from Firebase@ Google I/O 2021, and join our alpha program for early access to the new Remote Config personalization feature. Learn more

রোবো পরীক্ষা দিয়ে শুরু করুন

রোবো পরীক্ষা একটি পরীক্ষামূলক সরঞ্জাম যা ফায়ারবেস টেস্ট ল্যাবের সাথে সংহত করা হয়। রোবো পরীক্ষাটি আপনার অ্যাপ্লিকেশনটির ইউআই এর কাঠামো বিশ্লেষণ করে এবং তারপরে ব্যবহারকারী ক্রিয়াকলাপগুলি স্বয়ংক্রিয়ভাবে অনুকরণ করে এটি পদ্ধতিগতভাবে অন্বেষণ করে। ইউআই / অ্যাপ্লিকেশন এক্সারসাইজার বানর পরীক্ষার বিপরীতে, রোবো পরীক্ষা সর্বদা একই ক্রিয়ায় একই ব্যবহারকারীর ক্রিয়াকলাপ অনুকরণ করে যখন আপনি এটিকে সেটিংসের সাথে নির্দিষ্ট ডিভাইস কনফিগারেশনে কোনও অ্যাপ্লিকেশন পরীক্ষা করতে ব্যবহার করেন। এটি আপনাকে বাগ ফিক্সগুলি যাচাই করতে এবং ইউআই / অ্যাপ্লিকেশন এক্সারসাইজার বানর পরীক্ষার সাথে পরীক্ষা করার সময় সম্ভব নয় এমনভাবে রিগ্রেশনগুলির জন্য পরীক্ষার জন্য রোবো পরীক্ষাটি ব্যবহার করতে দেয়।

রোবো পরীক্ষা লগ ফাইলগুলিকে ক্যাপচার করে, বর্ণিত স্ক্রিনশটগুলির একটি সিরিজ সংরক্ষণ করে এবং তারপরে এটি সম্পাদিত সিমুলেটেড ব্যবহারকারী ক্রিয়াকলাপগুলি আপনাকে দেখানোর জন্য সেই স্ক্রিনশটগুলি থেকে একটি ভিডিও তৈরি করে। এই লগগুলি, স্ক্রিনশটগুলি এবং ভিডিওগুলি আপনাকে যদি আপনার অ্যাপ্লিকেশনটি ক্র্যাশ করে তবে মূল কারণটি নির্ধারণ করতে সহায়তা করতে পারে এবং আপনার অ্যাপ্লিকেশনটির ইউআই সহ সমস্যাগুলি খুঁজতে আপনাকে সহায়তা করতে পারে।

রোবো পরীক্ষা ক্রল পরিসংখ্যান

আপনার রোবো পরীক্ষার ফলাফলগুলি ব্যাখ্যা করতে আপনাকে সহায়তা করতে, প্রতিটি পরীক্ষার ক্রলের সময় রোবোর পরিসংখ্যান রেকর্ড করে। টেস্ট ল্যাব আপনার পরীক্ষার ফলাফলের পৃষ্ঠায় রোবো ট্যাবের শীর্ষে পরিসংখ্যান প্রদর্শন করে:

  • ক্রিয়া: র‌্যাব স্ক্রিপ্ট ক্রিয়া, বানরের ক্রিয়া এবং রোবোর নির্দেশাবলী সহ ক্রল চলাকালীন মোট ক্রিয়াকলাপ।
  • ক্রিয়াকলাপ: ক্রল চলাকালীন স্বতন্ত্র ক্রিয়াকলাপের সংখ্যা।
  • স্ক্রিন: ক্রল সময় পরিদর্শন স্বতন্ত্র পর্দা সংখ্যা।

টেস্ট ল্যাব ক্রল গ্রাফ আকারে রোবো ক্রলের দৃশ্যমান উপস্থাপনা তৈরি করতেও পরিসংখ্যানগুলি ব্যবহার করে। গ্রাফটির নোড হিসাবে স্ক্রিন এবং প্রান্ত হিসাবে ক্রিয়া রয়েছে। পর্দার মধ্যবর্তী প্রান্তগুলি অনুসরণ করে, আপনি কীভাবে রোবো ক্রল জুড়ে আপনার অ্যাপ্লিকেশনটিকে ট্র্যাভেট করেছিলেন তা সম্পর্কে ধারণা পেতে পারেন।

রোবোর পরীক্ষার সময়সীমা শেষ

আপনার অ্যাপ্লিকেশনটির ইউআই এর জটিলতার উপর নির্ভর করে, রোবো পরীক্ষায় ইউআই ইন্টারঅ্যাকশনগুলির পুরো সেটটি শেষ করতে পাঁচ মিনিট বা তার বেশি সময় লাগতে পারে। আমরা বেশিরভাগ অ্যাপ্লিকেশনের জন্য পরীক্ষার সময়সীমা কমপক্ষে 120 সেকেন্ড (2 মিনিট) এবং মাঝারিভাবে জটিল অ্যাপ্লিকেশনগুলির জন্য 300 সেকেন্ড (5 মিনিট) সেট করার পরামর্শ দিই। টাইমআউটটির ডিফল্ট মান হ'ল অ্যান্ড্রয়েড স্টুডিও এবং গুগল বিকাশকারী কনসোল থেকে চালিত পরীক্ষার জন্য 300 সেকেন্ড (5 মিনিট) এবং gcloud কমান্ড লাইন থেকে চালিত পরীক্ষার জন্য 1500 সেকেন্ড (25 মিনিট)।

অ্যাপ্লিকেশন শুরু হওয়ার সময়সীমা ত্রুটি

যদি আপনার অ্যাপ্লিকেশনটি শুরু হতে দীর্ঘ সময় নেয় তবে রোবো একটি ত্রুটি ফেলতে পারে এবং আপনার অ্যাপ্লিকেশনটিকে ক্রল করতে সক্ষম হবে না। এটি কেবলমাত্র অত্যন্ত দীর্ঘ সময় শুরুর ক্ষেত্রে ঘটে এবং আপনার অ্যাপ্লিকেশনটিকে দ্রুত শুরু করার জন্য এটি সংশোধন করেই সমাধান করা যায়।

রোবো স্ক্রিপ্টগুলির সাথে আরও নিয়ন্ত্রণ

কখনও কখনও আপনার পরীক্ষাগুলিতে আপনার আরও নিয়ন্ত্রণের প্রয়োজন হয়। উদাহরণস্বরূপ, আপনি একটি সাধারণ ব্যবহারকারীর যাত্রা পরীক্ষা করতে বা ব্যবহারকারীর নাম এবং পাসওয়ার্ডের মতো নির্দিষ্ট ইউআই ইনপুট সরবরাহ করতে চাইতে পারেন। রোবো স্ক্রিপ্টগুলি সাহায্য করতে পারে।

রোব স্ক্রিপ্টগুলির সাহায্যে আপনি নিজের অ্যাপ্লিকেশনটিতে একটি ওয়ার্কফ্লো দিয়ে হেঁটে রেকর্ড করেছেন, তারপরে রবো পরীক্ষায় চালানোর জন্য সেই রেকর্ডিংটি ফায়ারবেস কনসোলে আপলোড করুন। যখন আপনি কোনও স্ক্রিপ্টের সাথে সংযুক্ত একটি রোবো পরীক্ষা চালান, তখন রোব আপনার প্রি-স্ক্রিপ্টযুক্ত ক্রিয়াগুলির মাধ্যমে প্রথমে পদক্ষেপ নেয় তারপরে যথারীতি অ্যাপটি অন্বেষণ করতে এগিয়ে যায়।

অ্যান্ড্রয়েড স্টুডিওতে ফায়ারবেস সরঞ্জামের মাধ্যমে রোব স্ক্রিপ্টিং দিয়ে শুরু করুন:

  1. Android স্টুডিও খুলুন।
  2. প্রধান মেনুতে, সরঞ্জামগুলি > ফায়ারবেস নির্বাচন করুন।
  3. টেস্ট ল্যাবটি নির্বাচন করুন এবং রেকর্ড রবো স্ক্রিপ্ট ক্লিক করুন এবং এটি রোবো পরীক্ষার গাইড করতে ব্যবহার করুন
  4. আপনার রব স্ক্রিপ্টটি রেকর্ড করতে সরঞ্জামটির অন্যান্য পদক্ষেপগুলি অনুসরণ করুন।
  5. টেস্ট ল্যাবে সেই রোবো স্ক্রিপ্টটি আপলোড করুন এবং আপনার পরীক্ষা শুরু করুন।

রবোর স্ক্রিপ্ট ত্রুটি

যদি কোনও রোব স্ক্রিপ্ট কোনও মুহুর্তে ব্যর্থ হয়, টেস্ট ল্যাব স্ক্রিপ্টের আরও সমস্ত পদক্ষেপ ত্যাগ করে এবং নিয়মিত রোবো ক্রলটি পুনরায় শুরু করে। প্রায়শই, রোব স্ক্রিপ্টগুলি ব্যর্থ হয় কারণ টেস্ট ল্যাব স্ক্রিনে কোনও প্রয়োজনীয় উপাদান খুঁজে পায় না। ব্যর্থতা এড়াতে, নিশ্চিত হয়ে নিন যে আপনার অ্যাপ নেভিগেশন অনুমানযোগ্য এবং আপনার স্ক্রিনগুলি কিছু অ-নিষেধাজ্ঞামূলক ক্রমে প্রদর্শিত হয়নি।

রোবো পরীক্ষা এবং অ অ্যান্ড্রয়েড ইউআই উইজেট

রোবো পরীক্ষাগুলি অ্যান্ড্রয়েড ইউআই উইজেটগুলিতে সরাসরি ক্রিয়া করতে অ্যান্ড্রয়েড এপিআই ব্যবহার করে। এটি পরীক্ষাগুলি আপনার ইউআইটিকে স্বয়ংক্রিয়ভাবে অন্বেষণ করতে সহায়তা করে, তবে এর অর্থ হ'ল এগুলিতে পরীক্ষা চালানোর জন্য তাদের কোনও স্ক্রিনের জন্য অ্যান্ড্রয়েড ইউআই হায়ারার্কি বের করতে সক্ষম হওয়া প্রয়োজন।

যদি আপনার অ্যাপ্লিকেশানের কোনও স্ক্রিন অ্যান্ড্রয়েড ইউআই উইজেট ব্যবহার না করে তবে সেই স্ক্রিনটি পরীক্ষা করতে রবো পরীক্ষাগুলি বানর অ্যাকশনগুলিতে ফিরে আসে। আরও পদ্ধতিগত রোবোর ক্রিয়াগুলির বিপরীতে, বানর অ্যাকশনগুলি কোনও ডিভাইসের স্ক্রিনে আধা-এলোমেলো অবস্থানগুলিতে কেবল ট্যাপ ইভেন্টগুলি অনুকরণ করে।

অ্যান্ড্রয়েড ইউআই উইজেট ব্যবহার না করে এমন আরও ভাল স্ক্রিনগুলির জন্য, আপনি ফায়ারবেস টেস্ট ল্যাব গেম লুপ টেস্টগুলির মাধ্যমে স্ক্রিপ্টযুক্ত টেপ এবং মিথস্ক্রিয়াগুলির একটি সেট দ্বারা একটি বানর অ্যাকশনের নির্বিচারে কলগুলি প্রতিস্থাপন করতে পারেন।

গুগল প্লেয়ের সাথে সংহতকরণ

আপনি আলফা বা বিটা চ্যানেল ব্যবহার করে আপনার অ্যাপ্লিকেশনটির APK ফাইল আপলোড এবং প্রকাশ করার সময় আপনি গুগল প্লে কনসোলে রবো পরীক্ষাটি ব্যবহার করতে পারেন। বিভিন্ন ভৌগলিক অবস্থান থেকে জনপ্রিয় শারীরিক ডিভাইসের একটি সেটটিতে রোবো পরীক্ষা চালানো হয়, যা বিভিন্ন ফর্ম ফ্যাক্টর এবং হার্ডওয়্যার কনফিগারেশনে পরীক্ষা কভারেজ সরবরাহ করে। আরও শিখতে, সমস্যাগুলি সনাক্ত করতে প্রাক-প্রবর্তন প্রতিবেদনগুলি দেখুন see

অ্যাকাউন্ট অ্যাকাউন্ট সাইন ইন এবং পূর্বনির্ধারিত পাঠ্য ইনপুট

রোবো পরীক্ষা পরীক্ষার অ্যাকাউন্ট সাইন-ইন সমর্থন করে এবং আপনাকে আপনার অ্যাপ্লিকেশনটিতে ক্ষেত্রগুলিতে পূর্বনির্ধারিত পাঠ্য প্রবেশ করার অনুমতি দেয়। কাস্টম সাইন-ইন এবং অন্যান্য পূর্বনির্ধারিত পাঠ্য ইনপুটগুলির জন্য, রোবো পরীক্ষাটি আপনার অ্যাপ্লিকেশানের EditText ক্ষেত্রগুলিতে পাঠ্য প্রবেশ করতে পারে। প্রতিটি স্ট্রিংয়ের জন্য, আপনাকে একটি অ্যান্ড্রয়েড সংস্থান নাম ব্যবহার করে সম্পাদনা EditText ক্ষেত্রটি সনাক্ত করতে হবে। আরও শিখতে, অ্যাক্সেস রিসোর্স দেখুন

সাইন ইন করুন

সাইন ইন সমর্থন করার জন্য রোবো পরীক্ষার দুটি পারস্পরিক-একচেটিয়া পদ্ধতি রয়েছে:

  • কাস্টম সাইন-ইন: আপনি যদি পরীক্ষার অ্যাকাউন্টের শংসাপত্রগুলি সরবরাহ করেন তবে আপনাকে রোবো পরীক্ষাগুলি কোথায় প্রবেশ করতে হবে তা জানাতে হবে এবং সেই শংসাপত্রগুলিও সরবরাহ করতে হবে।
  • স্বয়ংক্রিয় সাইন ইন: যদি আপনার অ্যাপ্লিকেশনটিতে কোনও সাইন-ইন স্ক্রিন থাকে যা প্রমাণীকরণের জন্য একটি Google অ্যাকাউন্ট ব্যবহার করে, আপনি কাস্টম সাইন-ইন করার জন্য পরীক্ষার অ্যাকাউন্টের শংসাপত্রগুলি সরবরাহ না করা পর্যন্ত রোবো পরীক্ষা একটি Google পরীক্ষা অ্যাকাউন্ট ব্যবহার করে।

কাস্টম সাইন-ইন করার জন্য পরীক্ষার অ্যাকাউন্ট শংসাপত্রগুলি সরবরাহ করতে, নিম্নলিখিতটি করুন:

  1. মাত্রা নির্বাচন করুন পৃষ্ঠায়, অতিরিক্ত বিকল্প নির্বাচন করুন
  2. পরীক্ষার অ্যাকাউন্ট শংসাপত্রগুলির ((চ্ছিক) অধীনে, পরীক্ষা অ্যাকাউন্টের জন্য ব্যবহারকারীর নাম এবং পাসওয়ার্ড সংস্থান নাম এবং ব্যবহারকারীর নাম এবং পাসওয়ার্ড প্রবেশ করান।

পূর্বনির্ধারিত পাঠ্য ইনপুট

আপনি আপনার অ্যাপ্লিকেশন দ্বারা ব্যবহৃত অন্যান্য পাঠ্য ক্ষেত্রে কাস্টম ইনপুট পাঠ্য সরবরাহ করতে পারেন। অতিরিক্ত ক্ষেত্রগুলির জন্য পাঠ্য ইনপুট সরবরাহ করতে, নিম্নলিখিতটি করুন:

  1. মাত্রা নির্বাচন করুন পৃষ্ঠায়, অতিরিক্ত বিকল্প নির্বাচন করুন
  2. অতিরিক্ত ক্ষেত্রগুলির (ptionচ্ছিক) অধীনে, এক বা একাধিক সংস্থান নাম এবং সংশ্লিষ্ট পাঠ্য ক্ষেত্রে প্রবেশের জন্য স্ট্রিং লিখুন।

পূর্বনির্ধারিত পাঠ্য ইনপুট ত্রুটি

রোবো সরবরাহ করা নিয়মিত প্রকাশের সাথে মেলে এমন একটি অ্যান্ড্রয়েড সংস্থান নাম সহ EditText ক্ষেত্রগুলির সন্ধান করে। যদি রোবো কোনও মিলের ক্ষেত্র খুঁজে না পায় তবে এটি আপনার পাঠ্যকে ইনপুট দেয় না, তবে অন্যথায় এটি যথারীতি ক্রল চালিয়ে যেতে থাকে।

আপনি পরীক্ষার জন্য আপনার অ্যাপ্লিকেশন দ্বারা সমর্থিত আরও তিনটি গভীর লিঙ্ক সরবরাহ করতে পারেন। অ্যান্ড্রয়েডের ACTION_VIEW অভিপ্রায় হিসাবে আপনার অ্যাপ্লিকেশনটিতে গভীর লিঙ্ক জারি করা হয় অতএব, প্রতিটি লিঙ্কটি অবশ্যই আপনার অ্যাপ্লিকেশনটিতে একটি উদ্দেশ্য ফিল্টারের সাথে মেলে।

যদি এক বা একাধিক গভীর লিঙ্ক সরবরাহ করা থাকে তবে অ্যাপটি প্রথমে সাধারণত চালু করা হয় ( ACTION_MAIN অভিপ্রায় ব্যবহার করে) এবং নির্দিষ্ট সময়সীমা পর্যন্ত ক্রল করা হয়। প্রধান ক্রল পরে, প্রতিটি গভীর লিঙ্ক প্রতিটি অতিরিক্ত 30 সেকেন্ডের জন্য ক্রল করা হয়।

যদি রোবো আপনার গভীর লিঙ্কটির সাথে মিলে কোনও কার্যকলাপ খুঁজে না পায় তবে টেস্ট ল্যাব লিঙ্কটিকে উপেক্ষা করে। গভীর লিঙ্ক সম্পর্কিত সমস্যাগুলি সাধারণত সরবরাহ করা গভীর লিঙ্ক এবং আপনার অ্যাপ্লিকেশনটিতে এর সংজ্ঞা মধ্যে পার্থক্যের ফলাফল। টাইপস বা অন্যান্য অসঙ্গতিগুলির জন্য প্রদত্ত URL এবং আপনার অ্যাপ্লিকেশন উভয়ই পরীক্ষা করে দেখুন Check

অ্যাপ্লিকেশন লাইসেন্সিং সমর্থন

টেস্ট ল্যাব অ্যাপগুলিকে সমর্থন করে যা গুগল প্লে দ্বারা প্রদত্ত অ্যাপ্লিকেশন লাইসেন্স পরিষেবা ব্যবহার করে। টেস্ট ল্যাব দিয়ে আপনার অ্যাপ্লিকেশনটি পরীক্ষা করার সময় লাইসেন্সসই সাফল্যের সাথে চেক করতে আপনার অবশ্যই অ্যাপ্লিকেশনটিকে প্লে স্টোরের প্রোডাকশন চ্যানেলে প্রকাশ করতে হবে। টেস্ট ল্যাব ব্যবহার করে আলফা বা বিটা চ্যানেলে আপনার অ্যাপ্লিকেশনটি পরীক্ষা করতে, টেস্ট ল্যাবে আপনার অ্যাপ্লিকেশন আপলোড করার আগে লাইসেন্সিং চেকটি সরিয়ে ফেলুন।

জ্ঞাত সমস্যা

রোবো পরীক্ষায় বর্তমানে নিম্নলিখিত সীমাবদ্ধতা রয়েছে:

  • ইউআই কাঠামো সমর্থন । Robo পরীক্ষা অ্যাপ্লিকেশনগুলির সাথে শুধুমাত্র সামঞ্জস্যপূর্ণ যা Android UI 'তে ফ্রেমওয়ার্ক থেকে ব্যবহার UI উপাদান (তত্সহ হয় View এবং ViewGroup বস্তু, কিন্তু ব্যতীত WebView বস্তু)। আপনি যদি ইউনিটি গেম ইঞ্জিন ব্যবহার করে এমন অ্যাপ্লিকেশনগুলি সহ অন্যান্য ইউআই ফ্রেমওয়ার্কগুলি ব্যবহার করে এমন অ্যাপ্লিকেশনগুলি ব্যায়াম করতে যদি রোবো পরীক্ষা ব্যবহার করেন, তবে প্রথম স্ক্রিনের বাইরে অন্বেষণ না করে পরীক্ষাটি বেরিয়ে যেতে পারে।
  • সাইন-ইন ক্যাপচা রোবো পরীক্ষা সাইন ইন স্ক্রিনগুলি বাইপাস করতে পারে না যাতে সাইন ইন করতে শংসাপত্রগুলি প্রবেশের বাইরে অতিরিক্ত ব্যবহারকারীর ক্রিয়া প্রয়োজন (যেমন ক্যাপচা সম্পূর্ণ করা)।