Google Home টেস্ট স্যুট

ক্লাউড-টু-ক্লাউড    Local Home SDK

Google Home Test Suite হল একটি ওয়েব অ্যাপ্লিকেশন যা আপনাকে স্মার্ট হোম অ্যাকশন সেল্ফ-টেস্ট করতে দেয়। Test Suite আপনার অ্যাকাউন্টের সাথে যুক্ত ডিভাইস ও বৈশিষ্ট্যের উপর ভিত্তি করে অটোমেটিক টেস্ট কেস তৈরি ও রান করে। আপনি টেস্ট সম্পূর্ণ করলে, টেস্টের ফলাফল দেখতে পারবেন।

Test Suite ব্যবহার করতে এবং সার্টিফিকেশনের জন্য Google-এ আপনার টেস্টের ফলাফল জমা দিতে, আরও তথ্যের জন্য স্মার্ট হোম অ্যাকশন টেস্ট ও শেয়ার করুন পৃষ্ঠা দেখুন। Test Suite-এর এই ভার্সনটি বিশেষভাবে ডেভেলপমেন্ট ও কোয়ালিটি অ্যাস্যুরেন্সের জন্য তৈরি করা হয়েছে।

Test Suite-এর মাধ্যমে করা টেস্টের মধ্যে নিম্নলিখিতগুলি অন্তর্ভুক্ত, তবে এগুলির মধ্যেই সীমাবদ্ধ নয়:

  • আপনার ডিভাইস ও বৈশিষ্ট্যের জন্য রিপোর্ট স্টেট ও সিঙ্ক করার অনুরোধ প্রয়োগ করা হয়েছে কিনা তা চেক করে।

  • QUERY ইনটেন্ট আপনার ডিভাইসের জন্য প্রয়োগ করা হয়েছে কিনা এবং এর ফলাফল রিপোর্ট স্টেট ফলাফলের সাথে মিলছে কিনা তা যাচাই করে।

আপনি নিচের বোতামে ক্লিক করে Test Suite টুল লঞ্চ করতে পারবেন:

Test Suite লঞ্চ করুন

আপনার অ্যাকশন সেল্ফ-টেস্ট করুন

আপনার ডিভাইস ও স্মার্ট হোম অ্যাকশন প্রোজেক্টে কীভাবে Test Suite রান করবেন তা নিম্নলিখিত বিভাগে বর্ণনা করা হয়েছে। Test Suite -এর জন্য আপনাকে সাইন-ইন করতে হবে যাতে এটি আপনার Google Home Graph-এ ডিভাইসগুলি পরীক্ষা করতে পারে এবং সরাসরি Google Assistant-এ কমান্ড পাঠাতে পারে।

আপনার অ্যাকশন সেল্ফ-টেস্ট করতে, এই ধাপগুলি অনুসরণ করুন:

  1. আপনার ওয়েব ব্রাউজারে, Test Suite খুলুন।
  2. স্ক্রিনের উপরে ডানদিকের কোণে থাকা বোতাম ব্যবহার করে Google-এ সাইন-ইন করুন।

  3. প্রোজেক্টের বিবরণ কনফিগার করুন:

    1. প্রোজেক্ট আইডি ফিল্ডে, আপনার স্মার্ট হোম অ্যাকশনের জন্য প্রোজেক্ট শনাক্তকারী লিখুন।
    2. পরবর্তী বিকল্পে ক্লিক করুন।
  4. টেস্ট সেটিংস কনফিগার করুন:

    1. আপনার Cloud-to-cloud ইন্টিগ্রেশন সার্টিফাই করার সময়, ডিফল্ট রিপোর্ট স্টেট/সিঙ্ক টাইমআউট অনুরোধ ভ্যালু অপরিবর্তিত রাখুন। তবে, পরীক্ষা করার জন্য, আপনার এজেন্ট Home Graph-এ স্ট্যাটাস রিপোর্ট করতে বেশি সময় নিলে, আপনি টাইমআউট ভ্যালু পরিবর্তন করতে পারেন।
    2. আপনার Cloud-to-cloud ইন্টিগ্রেশন সার্টিফাই করার সময়, টেস্ট রিকোয়েস্ট সিঙ্ক বিকল্পটি চালু আছে কিনা তা নিশ্চিত করুন—টেস্টিংয়ের সময়, আপনাকে কোনও ডিভাইস যোগ, আপডেট বা সরানোর জন্য এবং Home Graph-এ ডিভাইস তালিকা পরিবর্তিত হয়েছে কিনা তা চেক করার জন্য প্রম্পট করা হবে। আপনি যে ইন্টিগ্রেশন পরীক্ষা করছেন তার মাধ্যমে পরিবর্তন সংক্রান্ত অ্যাকশন নেওয়া হয়। আপনার ইন্টিগ্রেশন টেস্ট করার সময় এজেন্ট ব্যবহারকারীর সাথে সবসময় অন্তত একটি ডিভাইস অ্যাটাচ করা থাকতে হবে।

    3. আপনি Scene ট্রেট ব্যবহার করলে, সিন ট্রেট টেস্ট করুন বিকল্প বেছে নিন।

    4. আপনি যদি লোকাল হোম ডিভাইসের জন্য টেস্ট স্যুট চালান, তাহলে লোকাল হোম SDK কাজ করে বিকল্প বেছে নিন।

      1. লোকাল ফুলফিলমেন্ট বা নিরবচ্ছিন্ন সেট-আপ বিকল্প বেছে নিন।
      2. ডিভাইসটি স্থানীয়ভাবে QUERY ইনটেন্ট ম্যানেজ করতে পারলে, স্থানীয় কোয়েরি সাপোর্ট করে বিকল্পে ক্লিক করুন।
  5. টেস্ট রান পারফর্ম করুন এবং ফলাফল দেখুন:

    1. টেস্ট রান করা শুরু করতে পরবর্তী বিকল্পে ক্লিক করুন। ইন্টারফেসে ডিভাইস এবং যেসব বৈশিষ্ট্য পরীক্ষা করা হচ্ছে তা দেখানো হয়।
  6. ফলাফল ও জমা দেওয়া পৃষ্ঠা দেখুন:

    1. টেস্ট সম্পূর্ণ হয়ে গেলে, ফলাফল দেখতে পরবর্তী বিকল্পে ক্লিক করুন।

পরীক্ষার ফলাফলে কতগুলি পরীক্ষায় পাস ও ফেল হয়েছে এবং পাস করার শতাংশের হার উল্লেখ করে একটি চূড়ান্ত স্কোর অন্তর্ভুক্ত থাকে।

অ্যাকাউন্ট লিঙ্ক করার যাচাইকরণ টেস্ট

Google স্মার্ট হোম ইকোসিস্টেমে অ্যাকাউন্ট লিঙ্ক করা গুরুত্বপূর্ণ ভূমিকা পালন করে। Test Suite-এ অ্যাকাউন্ট লিঙ্ক করার যাচাইকরণ পরীক্ষা সম্ভাব্য সমস্যার জন্য আপনার OAuth পরিষেবা চেক করে।

অ্যাকাউন্ট লিঙ্ক করার যাচাইকরণ টেস্টে অ্যাক্সেস টোকেন এবং রিফ্রেশ টোকেন যাচাই করার টেস্ট অন্তর্ভুক্ত থাকে:

অ্যাক্সেস টোকেন যাচাইকরণ টেস্ট

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

আইটেম পরীক্ষা করুন ব্যাখ্যা
অ্যাক্সেস টোকেন JWT ফর্ম্যাটে আছে কিনা তা চেক করুন Google অ্যাকাউন্ট লিঙ্ক করার ক্ষেত্রে JWT ফর্ম্যাটের অ্যাক্সেস টোকেন সাজেস্ট করা হয় না। JWT ফর্ম্যাট পাওয়া গেলে, নিম্নলিখিত সতর্কতা দেখানো হয়: The access token seems to be JWT, this is not good. Because it unnecessarily exposes information about partner implementation and we recommend opaque symmetric encrypted access token.
মেয়াদ শেষ হয়ে যাওয়া অ্যাক্সেস টোকেনে রিফ্রেশ টোকেন আছে কিনা তা চেক করুন। অ্যাক্সেস টোকেনের মেয়াদ শেষ হয়ে গেলে রিফ্রেশ টোকেন দিতে হবে। কোনও রিফ্রেশ টোকেন খুঁজে না পাওয়া গেলে এই পরীক্ষাটি ব্যর্থ হবে।

রিফ্রেশ টোকেন যাচাইকরণ টেস্ট

আপনার টোকেন এক্সচেঞ্জ এন্ডপয়েন্ট যাতে নতুন অ্যাক্সেস টোকেনের জন্য সঠিকভাবে রিফ্রেশ টোকেন এক্সচেঞ্জ করে তা নিশ্চিত করতে রিফ্রেশ টোকেন পরীক্ষা করা হয়।

আইটেম পরীক্ষা করুন ব্যাখ্যা
ভুল রিফ্রেশ টোকেন দিয়ে টোকেন রিফ্রেশ করা হচ্ছে, পার্টনারের উত্তর চেক করা হচ্ছে। ভুল রিফ্রেশ টোকেন অনুরোধের জন্য আপনার সার্ভারকে HTTP 400 ত্রুটিপূর্ণ অনুরোধের সমস্যা {"error": "invalid_grant"} সহ দেখাতে হবে। উত্তরে "ত্রুটি কোড বা মেসেজ" না থাকলে, এই টেস্ট কেস ব্যর্থ হবে। আরও তথ্যের জন্য অ্যাক্সেস টোকেনের জন্য রিফ্রেশ টোকেন এক্সচেঞ্জ করুন লিঙ্কে যান।
টোকেন রিফ্রেশ করার পরে অ্যাক্সেস টোকেন আপডেট করা হয়েছে কিনা তা পরীক্ষা করুন। রিফ্রেশ টোকেনের অনুরোধের উত্তরে নতুন অ্যাক্সেস টোকেন ফেরত পাঠাতে হবে। আপনার সার্ভার একই অ্যাক্সেস টোকেন প্রদান করলে, টেস্ট কেস ব্যর্থ হবে।
মেয়াদ শেষ না হওয়া অ্যাক্সেস টোকেন এখনও বৈধ কিনা তা চেক করুন। অ্যাক্সেস টোকেনের মেয়াদ শেষ হওয়ার সময় দেখানো হবে।
রিফ্রেশ করার সময় রিফ্রেশ টোকেন রোটেট করা হয়েছে কিনা তা চেক করুন। রিফ্রেশ টোকেনের অনুরোধের পরে রিফ্রেশ টোকেন পরিবর্তন করা হয়েছে কিনা তা আমরা চেক করি। রিফ্রেশ টোকেন পরিবর্তন হলে, আপনার সার্ভারকে নতুন রিফ্রেশ টোকেন ব্যবহার করার পরেই পুরনো রিফ্রেশ টোকেন বাতিল করতে হবে, যাতে রেস কন্ডিশন এড়ানো যায়, যা ব্যবহারকারীর অ্যাকাউন্ট লিঙ্কিং প্রক্রিয়াকে ব্যাহত করতে পারে। নতুন রিফ্রেশ টোকেন ব্যবহার করার আগে পুরনো রিফ্রেশ টোকেন বাতিল করে দিলে পরীক্ষাটি ব্যর্থ হবে।

সমস্যার মেসেজ

নিম্নলিখিত সারণীতে কিছু সাধারণ সমস্যার মেসেজ তালিকাভুক্ত করা হয়েছে যা আপনি দেখতে পেতে পারেন এবং সেগুলি সমাধান করার জন্য সাজেস্ট করা উপায়।

ত্রুটি বার্তা কীভাবে সমাধান করবেন
<_id_> প্রোজেক্টে HomeGraph API আগে ব্যবহার করা হয়নি অথবা এটি বন্ধ করা আছে আপনি HomeGraph API চালু করেছেন কিনা তা নিশ্চিত করুন।
অনুরোধ করা এন্টিটি খুঁজে পাওয়া যায়নি আপনার agentUserId বৈধ এবং আপনার পরিষেবার সাথে লিঙ্ক করা আছে কিনা তা চেক করুন।

প্রোজেক্ট ${your project id}-এ আপনার resourcemanager.projects.get অনুমতি আছে কিনা এবং সম্মতি সংক্রান্ত স্ক্রিনে সব অনুমতি দিয়েছেন কিনা তা ভালো করে দেখে নিন।

মডিউল ডেটা পাওয়ার সময় সমস্যা হয়েছে: getModuleData error: Http failure response for https://hometestsuiteproxy-pa.googleapis.com/v1/module:get: 403 OK 403

  1. আপনার অ্যাকাউন্টে প্রোজেক্টের জন্য resourcemanager.projects.get অনুমতি আছে কিনা তা নিশ্চিত করতে IAM অনুমতি সংক্রান্ত সমস্যার সমাধান করুন লিঙ্কে দেওয়া নির্দেশাবলী অনুসরণ করুন।
  2. "Test suite for smart home"-এর জন্য নিম্নলিখিত অনুমতি চেক করতে আপনার অ্যাকাউন্টে অ্যাক্সেস আছে এমন অ্যাপ পৃষ্ঠায় যান:
    • অ্যাকাউন্টের প্রাথমিক তথ্য
      1. আপনার Google অ্যাকাউন্টের প্রাথমিক ইমেল আইডি দেখে
      2. আপনি সর্বজনীনভাবে প্রকাশ করেছেন এমন যেকোনও ব্যক্তিগত তথ্য সহ আপনার ব্যক্তিগত তথ্য দেখে
    • অতিরিক্ত অ্যাক্সেস
      1. আপনার Assistant ব্যবহার করুন: আপনার Google অ্যাকাউন্টে ব্যাপক অ্যাক্সেস
      2. আপনার হোম গ্রাফে স্মার্ট হোম ডিভাইস পরীক্ষা ও নিয়ন্ত্রণ করে
    আপনি যদি অনুমতি সংক্রান্ত কোনও সমস্যা পান, তাহলে প্রথমে অ্যাক্সেস সরিয়ে দিন এবং আবার সাইন-ইন করার সময় সম্মতি সংক্রান্ত স্ক্রিনে সব অনুমতি দিন।

পরীক্ষার ফলাফল জমা দিন

সার্টিফিকেশনের জন্য জমা দেওয়ার আগে আপনার Test Suite ফলাফলকে ১০০% টেস্টে পাস করতে হবে। আপনার যদি এমন কোনও বৈশিষ্ট্য থাকে যার জন্য ম্যানুয়াল টেস্টিং প্রয়োজন, তাহলে আপনার এখনও Test Suite টুল চালানো উচিত এবং ফলাফলটি ১০০% পাস না হলেও সেটি অ্যাটাচ করা উচিত।

আপনার টেস্টের ফলাফল জমা দিতে এবং আপনার Cloud-to-cloud ইন্টিগ্রেশন সার্টিফাই করতে, এইসব ধাপ অনুসরণ করুন:

  1. আপনার টেস্টের ফলাফল পাওয়ার পরে এবং আপনি Cloud-to-cloud ইন্টিগ্রেশন সার্টিফাই করার জন্য রেডি থাকলে, Test Suite টুলে জমা দিন বিকল্পে ক্লিক করুন।
  2. Google Home Developer Console > Cloud-to-cloud > সার্টিফাই করুন বিকল্পে যান।
  3. আপনি যে ইন্টিগ্রেশন সার্টিফাই করতে চান সেটি বেছে নিন।
  4. ডকুমেন্টেশন বিকল্পের অধীনে, আপনার Test Suite ফলাফল আইডি লিখুন।
  5. প্রয়োজনীয় সব ফিল্ড পূরণ করে জমা দিন বিকল্পে ক্লিক করুন।