ব্যবহারকারীর মিথস্ক্রিয়া পরীক্ষা করা নিশ্চিত করতে সহায়তা করে যে ব্যবহারকারীরা আপনার অ্যাপের সাথে ইন্টারঅ্যাক্ট করার সময় অপ্রত্যাশিত ফলাফলের সম্মুখীন না হয় বা খারাপ অভিজ্ঞতা না পায়। আপনার অ্যাপের UI সঠিকভাবে কাজ করছে কিনা তা যাচাই করতে হলে আপনাকে ইউজার ইন্টারফেস (UI) পরীক্ষা তৈরি করার অভ্যাস করা উচিত।
UI পরীক্ষার একটি পদ্ধতি হল একজন মানব পরীক্ষককে লক্ষ্য অ্যাপে ব্যবহারকারীর ক্রিয়াকলাপগুলির একটি সেট সঞ্চালন করা এবং এটি সঠিকভাবে আচরণ করছে কিনা তা যাচাই করা। যাইহোক, এই ম্যানুয়াল পদ্ধতিটি সময়সাপেক্ষ এবং ত্রুটি-প্রবণ হতে পারে। একটি আরও দক্ষ পদ্ধতি হল আপনার UI পরীক্ষাগুলি লিখতে যাতে ব্যবহারকারীর ক্রিয়াগুলি একটি স্বয়ংক্রিয় উপায়ে সঞ্চালিত হয়। স্বয়ংক্রিয় পদ্ধতি আপনাকে পুনরাবৃত্তিযোগ্য পদ্ধতিতে দ্রুত এবং নির্ভরযোগ্যভাবে আপনার পরীক্ষা চালাতে দেয়।
UI পরীক্ষাগুলি একটি অ্যাপ (বা এর অংশ) লঞ্চ করে, তারপর ব্যবহারকারীর মিথস্ক্রিয়া অনুকরণ করে এবং অবশেষে অ্যাপটি যথাযথভাবে প্রতিক্রিয়া দেখায় কিনা তা পরীক্ষা করে। এগুলি হল ইন্টিগ্রেশন পরীক্ষা যা একটি ছোট উপাদানের আচরণ যাচাই করা থেকে শুরু করে একটি বৃহৎ নেভিগেশন পরীক্ষা যা পুরো ব্যবহারকারীর প্রবাহকে অতিক্রম করে। এগুলি রিগ্রেশন পরীক্ষা করতে এবং বিভিন্ন API স্তর এবং শারীরিক ডিভাইসগুলির সাথে সামঞ্জস্যতা যাচাই করতে উপযোগী।
UI পরীক্ষা চালান
- অ্যান্ড্রয়েড স্টুডিও ব্যবহার করে ইন্সট্রুমেন্টেড UI পরীক্ষা চালানোর জন্য, আপনি একটি পৃথক অ্যান্ড্রয়েড টেস্ট ফোল্ডারে আপনার পরীক্ষার কোড প্রয়োগ করুন -
src/androidTest/java
। অ্যান্ড্রয়েড গ্রেডল প্লাগইন আপনার পরীক্ষার কোডের উপর ভিত্তি করে একটি পরীক্ষামূলক অ্যাপ তৈরি করে, তারপরে লক্ষ্য অ্যাপের মতো একই ডিভাইসে পরীক্ষা অ্যাপটি লোড করে। আপনার পরীক্ষার কোডে, আপনি নির্দিষ্ট ব্যবহারের পরিস্থিতিগুলি কভার করে এমন পরীক্ষার কাজগুলি সম্পাদন করার জন্য লক্ষ্য অ্যাপে ব্যবহারকারীর মিথস্ক্রিয়া অনুকরণ করতে UI পরীক্ষার কাঠামো ব্যবহার করতে পারেন। - আপনি JVM এ UI পরীক্ষা চালানোর জন্য Robolectric ব্যবহার করতে পারেন।
স্থাপত্য এবং পরীক্ষা সেটআপ
আপনার অ্যাপের আর্কিটেকচারটি পরীক্ষাগুলিকে দ্বিগুণ পরীক্ষার জন্য এর অংশগুলিকে প্রতিস্থাপন করতে দেয় এবং আপনার লাইব্রেরিগুলি ব্যবহার করা উচিত যা পরীক্ষায় সহায়তা করার জন্য ইউটিলিটিগুলি সরবরাহ করে। উদাহরণস্বরূপ, আপনি একটি ডেটা রিপোজিটরি মডিউল এর একটি ইন-মেমরি সংস্করণ দিয়ে প্রতিস্থাপন করতে পারেন যা পরীক্ষার জন্য জাল, নির্ধারক ডেটা সরবরাহ করে।
নির্ভরতা প্রতিস্থাপনের প্রস্তাবিত পদ্ধতি হল নির্ভরতা ইনজেকশন। আপনি ম্যানুয়ালি আপনার নিজস্ব সিস্টেম তৈরি করতে পারেন তবে আমরা এর জন্য হিল্টের মতো একটি DI ফ্রেমওয়ার্ক ব্যবহার করার পরামর্শ দিই।
কেন স্বয়ংক্রিয়ভাবে UI পরীক্ষা করবেন?
একটি অ্যান্ড্রয়েড অ্যাপ অনেকগুলি API স্তর এবং ফর্ম ফ্যাক্টর জুড়ে হাজার হাজার বিভিন্ন ডিভাইসকে লক্ষ্য করতে পারে এবং OS ব্যবহারকারীর কাছে যে উচ্চ স্তরের কাস্টমাইজেশন নিয়ে আসে তার অর্থ হল আপনার অ্যাপটি ভুলভাবে রেন্ডার করা হতে পারে বা কিছু ডিভাইসে ক্র্যাশও হতে পারে।
UI টেস্টিং আপনাকে সামঞ্জস্য পরীক্ষা করতে দেয়, বিভিন্ন প্রসঙ্গে একটি অ্যাপের আচরণ যাচাই করে। আপনি নিম্নলিখিত উপায়ে পরিবর্তিত ডিভাইসগুলিতে আপনার UI পরীক্ষা চালাতে চাইতে পারেন:
- API স্তর : 21, 25, এবং 30।
- স্থানীয় : ইংরেজি, আরবি এবং চীনা।
- ওরিয়েন্টেশন : প্রতিকৃতি, ল্যান্ডস্কেপ।
তদুপরি, অ্যাপগুলির ফোনের বাইরে আচরণ পরীক্ষা করা উচিত। আপনার ট্যাবলেট, ফোল্ডেবল এবং অন্যান্য ডিভাইসে পরীক্ষা করা উচিত। বিভিন্ন স্ক্রীন মাপ পরীক্ষা করা সম্পর্কে আরও পড়ুন।
UI পরীক্ষার প্রকারভেদ
এই বিভাগে দুটি ধরণের UI পরীক্ষা রয়েছে:
- আচরণ পরীক্ষাগুলি UI উপাদানগুলির বৈশিষ্ট্যগুলির উপর দাবী করার জন্য UI শ্রেণিবিন্যাস বিশ্লেষণ করে।
- স্ক্রিনশট পরীক্ষাগুলি একটি UI এর স্ক্রিনশট নেয় এবং সেগুলিকে পূর্বে অনুমোদিত চিত্রগুলির সাথে তুলনা করে৷