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

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

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

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

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

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

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

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

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

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

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

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

পরবর্তী ধাপ