অন্যান্য ধরনের Android অ্যাপের তুলনায়, Home API অ্যাপের নিজস্ব অনন্য বিবেচনা ও চ্যালেঞ্জ রয়েছে, যার মধ্যে ফিজিক্যাল স্মার্ট হোম ডিভাইসের উপর নির্ভরতা, নেটওয়ার্কের নির্ভরযোগ্যতা, নিরাপত্তা ও গোপনীয়তা এবং ডিভাইস ও প্রোটোকল ইন্টারঅপারেবিলিটি অন্তর্ভুক্ত। এইসব পার্থক্যের প্রভাব পরীক্ষার উপর পড়ে।
আপনার টেস্ট এনভায়রনমেন্ট সেট-আপ করা
Home API অ্যাপ পরীক্ষা করার জন্য একটি শক্তিশালী টেস্টিং এনভায়রনমেন্ট অত্যন্ত গুরুত্বপূর্ণ।
একটি নির্দিষ্ট ওয়াই-ফাই নেটওয়ার্কে আপনার Home API টেস্ট ডিভাইস আলাদা করা একটি ভালো কৌশল। এটি অন্যান্য ডিভাইস থেকে হওয়া ইন্টারফেয়ারেন্স আটকায় এবং আপনাকে থ্রটল করা ব্যান্ডউইথের মতো বিভিন্ন নেটওয়ার্ক পরিস্থিতি সিমুলেট করতে দেয়।
আপনি বিভিন্ন ধরনের স্মার্ট হোম ডিভাইস ব্যবহার করে পরীক্ষা করতে চাইবেন, যা বিভিন্ন প্রস্তুতকারকের থেকে পাওয়া যায়। আসল, ফিজিক্যাল ডিভাইসের মাধ্যমে টেস্ট করতে ভুলবেন না। ভার্চুয়াল ডিভাইস ও এমুলেটর ব্যবহার করা যেতে পারে, তবে শুধু সেগুলির উপর নির্ভর করা উচিত নয়।
একইভাবে, বিভিন্ন স্ক্রিন সাইজ এবং বিভিন্ন Android ভার্সন সহ একাধিক প্রস্তুতকারকের বিভিন্ন Android ডিভাইসে আপনার অ্যাপ পরীক্ষা করা আরও বেশি মানানসই কিনা তা যাচাই করতে সাহায্য করে।
আপনার টুল একত্রিত করা
Home APIs অ্যাপ পরীক্ষা করার জন্য নিম্নলিখিত টুলগুলি সহায়ক:
| টুল | বিবরণ |
|---|---|
| Google Home Plugin for Android Studio | Google Assistant Simulator, Home Graph Viewer, Google Cloud Logging এবং Android ডিবাগ ব্রিজ (adb) লগ ভিউয়ারে অ্যাক্সেস প্রদান করে। |
| Google Home Playground | আসল ফিজিক্যাল ডিভাইসের মাধ্যমে পরীক্ষা করার বিকল্প নয়, তবে অনেক পরীক্ষার ক্ষেত্রে এটি অত্যন্ত গুরুত্বপূর্ণ। |
| Matter Virtual Device (MVD) | Home APIs অ্যাপে Matter ডিভাইসের সাথে পরীক্ষা করার সময় সহায়ক হতে পারে এমন আরেকটি এমুলেশন অ্যাপ। |
| এসপ্রেসো | আপনাকে UI টেস্টিং অটোমেট করতে দেয়। হার্ডওয়্যার ইন্টার্যাকশন সিমুলেট করতে আপনাকে অন্তর্নিহিত API মক করতে হবে। |
| নেটওয়ার্ক এমুলেটর | আপনাকে বিভিন্ন নেটওয়ার্ক পরিস্থিতি এবং API রেসপন্স সিমুলেট করতে দেয়, যা বিশেষ করে সহায়ক যদি আপনার Home API একটি ক্লাউড ব্যাকএন্ড ব্যবহার করে। |
| Android Studio Logcat | লগ ডেটা ম্যানেজ ও বিশ্লেষণ করে। |
বিভিন্ন টেস্টিং পদ্ধতি ও স্ট্র্যাটেজি প্রয়োগ করা
আপনার Home APIs অ্যাপে বিভিন্ন ধরনের টেস্টিং পদ্ধতি প্রয়োগ করা উচিত। বিভিন্ন পদ্ধতি সম্পর্কে সাধারণ তথ্যের জন্য, Android-এ অ্যাপ টেস্ট করুন দেখুন। সব Android অ্যাপের ক্ষেত্রে ব্যবহারকারীর অভিজ্ঞতা ও নিরাপত্তা সংক্রান্ত পরীক্ষা করা হবে বলে আশা করা হয়, এর পাশাপাশি কিছু ক্ষেত্রে পরীক্ষা করা Home API অ্যাপের জন্য বিশেষভাবে প্রাসঙ্গিক এবং নিম্নলিখিত বিভাগে আরও বিস্তারিতভাবে হাইলাইট করা হয়েছে।
ফাংশনাল টেস্টিং
আপনার অ্যাপের ক্ষমতার উপর নির্ভর করে, আপনি নিম্নলিখিত কিছু ক্ষেত্রে বিশেষ মনোযোগ দিতে চাইতে পারেন:
- ডিভাইস খোঁজা ও পেয়ার করা, যার মধ্যে প্রাথমিক সেট-আপ ও নতুন ডিভাইসের সাথে পেয়ার করা, অ্যাপ রিস্টার্ট, ডিভাইস রিবুট বা নেটওয়ার্ক পরিবর্তনের পরে আগে থেকে থাকা ডিভাইস আবার খোঁজা অন্তর্ভুক্ত। এছাড়াও, ডিভাইস কাজ না করা বা ব্যবহারকারী ভুল ক্রেডেনশিয়াল লিখলে কী হবে তা চেক করুন।
- স্টেট সিঙ্ক করা, যাতে অ্যাপ আপডেট হয়ে বর্তমান স্টেট সঠিকভাবে ও সময়মতো দেখায়।
- কীভাবে অনুমতি ম্যানেজ ও এনফোর্স করা হয়, বিশেষ করে আপনার অ্যাপ একাধিক ব্যবহারকারী বা শেয়ার করা হোম অ্যাক্সেস সাপোর্ট করলে। এর মধ্যে আপনার অ্যাপ প্রত্যাহার করা অনুমতি সুন্দরভাবে ম্যানেজ করে কিনা তা যাচাই করা অন্তর্ভুক্ত।
- আপনার অ্যাপে দৃশ্য সংক্রান্ত সুবিধা থাকলে, যেমন "শুভরাত্রি" দৃশ্য যা সব আলো বন্ধ করে দেয়, দৃশ্য তৈরি, পরিবর্তন ও কার্যকর করার বিষয়টি পরীক্ষা করুন। স্টার্টার ও অ্যাকশন সহ অটোমেশন টেস্ট করুন।
পারফর্ম্যান্স টেস্টিং
আপনার অ্যাপ রেসপন্সিভ কিনা এবং কোনও অপ্রয়োজনীয় লেটেন্সি তৈরি করছে না কিনা তা যাচাই করুন। সম্ভব হলে, স্কেলেবিলিটি এবং লোডের মধ্যে আপনার অ্যাপ কীভাবে পারফর্ম করে তা মূল্যায়ন করতে প্রচুর সংখ্যক ডিভাইসের সাথে পরীক্ষা করুন। এছাড়াও, আপনার অ্যাপের CPU, মেমরি এবং ব্যাটারি ব্যবহার দেখুন, বিশেষ করে অ্যাক্টিভ ডিভাইস কমিউনিকেশনের সময়, যাতে রিসোর্সের ব্যবহার যুক্তিযুক্ত কিনা তা বোঝা যায়।
নির্ভরযোগ্যতা ও স্টেবিলিটি টেস্টিং
নেটওয়ার্ক কানেক্টিভিটির উপর নির্ভরতার কারণে, Home APIs অ্যাপ নিম্নলিখিত পরিস্থিতিতে পরীক্ষা করা উচিত:
- নেটওয়ার্কের ওঠানামা
- ওয়াই-ফাই ড্রপআউট, দুর্বল সিগন্যাল এবং নেটওয়ার্ক সুইচিং সিমুলেট করুন।
- আপনার অ্যাপ ডিসকানেকশন ও রিকানেকশন ঠিকভাবে ম্যানেজ করে কিনা তা যাচাই করুন।
- কানেক্টিভিটি রিস্টোর করা হলে কমান্ড কিউতে আছে কিনা এবং এক্সিকিউট করা হচ্ছে কিনা তা যাচাই করুন অথবা উপযুক্ত ত্রুটি মেসেজ প্রদান করুন।
- শুধু হোম নেটওয়ার্ক থেকে নয়, রিমোট নেটওয়ার্ক থেকেও অ্যাপটি পরীক্ষা করুন।
- ডিভাইস ডিসকানেক্ট হওয়া
- ডিভাইস ফিজিক্যালি আনপ্লাগ করুন।
- ডিভাইস বন্ধ করে আবার চালু করুন।
- একই সাথে একাধিক অপারেশন
- কমান্ডের একটি দ্রুত ক্রম পাঠান।
- একাধিক ব্যবহারকারী একই ডিভাইস একই সাথে নিয়ন্ত্রণ করার চেষ্টা করছেন।
- ওভারল্যাপ করা দৃশ্য ও অটোমেশন পরীক্ষা করুন।
- সমস্যা ম্যানেজ করা
- API সংক্রান্ত সমস্যা জোর করে দেখানো, যেমন, ক্লাউড API সার্ভারের উত্তর মক করা।
- ব্যবহারকারীর ভুল ইনপুট পরীক্ষা করুন।
- গ্রেসফুল ডিগ্রেডেশন এবং তথ্যপূর্ণ ত্রুটি মেসেজ যাচাই করুন।
- নির্ভরযোগ্যতা - সম্ভাব্য মেমরি লিক বা স্থিতিশীলতা সংক্রান্ত সমস্যা খুঁজে বের করতে দীর্ঘ সময় ধরে অ্যাপ এবং কানেক্ট করা ডিভাইস চালান।
আপনার অ্যাপ লঞ্চ করার আগে
Home API ব্যবহার করে এমন অ্যাপ লঞ্চ করার আগে, সেটি সমস্ত ফাংশনাল ও কোয়ালিটি সংক্রান্ত প্রয়োজনীয়তা পূরণ করছে কিনা তা যাচাই করার জন্য ভালভাবে পরীক্ষা করার পরামর্শ দেওয়া হয়। আপনার অ্যাপের কার্যকারিতা পরীক্ষা করার জন্য একটি নির্দেশিকা হিসাবে Google Home APIs অ্যাপ টেস্ট রিপোর্ট ব্যবহার করুন।
আপনাকে Google Home API অ্যাপ টেস্ট রিপোর্ট জমা দিতে বলা হলে, রিপোর্টটি আপনার Google Technical Account Manager (TAM)-এ পাঠান যাতে তারা রিপোর্টটি পর্যালোচনা করতে পারে এবং আপনার অ্যাপ টেস্ট করার সময় এটি রেফারেন্স হিসেবে ব্যবহার করতে পারে।