Robo স্ক্রিপ্ট চালানো (iOS+)

এই ডকুমেন্টে Robo স্ক্রিপ্ট কীভাবে ব্যবহার করতে হয় তা বর্ণনা করা হয়েছে। এগুলি হল এমন টেস্ট যা মোবাইল অ্যাপের জন্য ম্যানুয়াল QA টাস্ক অটোমেট করে এবং কন্টিনিউয়াস ইন্টিগ্রেশন (CI) ও প্রি-লঞ্চ টেস্টিং স্ট্র্যাটেজি চালু করে। যেমন, আপনি সাধারণ ব্যবহারকারীর অভিজ্ঞতা পরীক্ষা করতে বা ব্যবহারকারীর নাম ও পাসওয়ার্ডের মতো নির্দিষ্ট ইউজার ইন্টারফেস (UI) ইনপুট দিতে Robo স্ক্রিপ্ট ব্যবহার করতে পারেন। রোবো স্ক্রিপ্ট হল রোবো টেস্ট-এর একটি ফিচার।

Robo স্ক্রিপ্ট, টেস্ট ইঞ্জিন হিসেবে Robo test ব্যবহার করে। সবচেয়ে প্রাথমিক ফর্মে, একটি Robo স্ক্রিপ্টে UI অ্যাকশনের একটি সিকোয়েন্স থাকে, যেমন 'ব্যবহারকারীর নাম' টেক্সট লেখা এবং তারপরে 'ঠিক আছে' বোতামে ট্যাপ করা। এছাড়াও, রোবো স্ক্রিপ্টে কোনও এলিমেন্ট দেখানোর জন্য অপেক্ষা করা, কোনও এলিমেন্টের মধ্যে নির্দিষ্ট পয়েন্টে ট্যাপ করা এবং Android Debug Bridge (adb) শেল কমান্ড এক্সিকিউট করার মতো অ্যাকশন অন্তর্ভুক্ত থাকতে পারে।

প্রচলিত টেস্টিং ফ্রেমওয়ার্কের তুলনায় রোবো স্ক্রিপ্টের নিম্নলিখিত সুবিধাগুলি রয়েছে:

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

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

  • বিভিন্ন ট্রিগার করার শর্ত, যেমন, কোনও নির্দিষ্ট অ্যাপ প্যাকেজের নাম অ্যাক্টিভ (বা অ্যাক্টিভ নয়) থাকা অথবা স্ক্রিনে কোনও নির্দিষ্ট এলিমেন্ট দেখানো (বা না দেখানো)।
  • এক্সিকিউশন কন্ট্রোল, যেমন, এক্সিকিউশনের সর্বাধিক সংখ্যা, অগ্রাধিকার, প্রাসঙ্গিক ক্রল স্টেজ।
  • অপ্রচলিত অ্যাকশনের ধরন (কন্ডিশনাল, এলিমেন্ট-ইগনোরিং, স্ক্রিন-ক্লোজিং)।

আমরা সাজেস্ট করি যে আপনি যখনই সম্ভব রোবো স্ক্রিপ্ট ব্যবহার করুন কারণ এগুলি সহজেই ম্যানেজ করা যায়। যেমন, আপনি নিম্নলিখিত কাজগুলি করতে Robo স্ক্রিপ্ট ব্যবহার করতে পারেন:

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

নিম্নলিখিত কাজগুলি করতে আরও উন্নত Robo স্ক্রিপ্ট ফিচার ব্যবহার করুন:

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

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

পরবর্তী ধাপ