Google Home टेस्ट सुइट

क्लाउड-टू-क्लाउड    लोकल होम SDK टूल

Google Home Test Suite एक वेब ऐप्लिकेशन है. इसकी मदद से, स्मार्ट होम ऐक्शन की जांच खुद की जा सकती है. Test Suite आपके खाते से जुड़े डिवाइसों और ट्रेट के आधार पर, टेस्ट केस अपने-आप जनरेट करता है और उन्हें चलाता है. जांच पूरी होने पर, आपको जांच के नतीजे दिखेंगे.

Test Suite का इस्तेमाल करने और सर्टिफ़िकेशन के लिए Google को अपने टेस्ट के नतीजे सबमिट करने के लिए, स्मार्ट होम ऐक्शन की जांच करना और उन्हें शेयर करना पेज पर जाएं. Test Suite का यह वर्शन, खास तौर पर डेवलपमेंट और क्वालिटी अश्योरेंस के लिए है.

Test Suite की ओर से किए जाने वाले टेस्ट में, ये टेस्ट शामिल हैं. हालांकि, इनके अलावा और भी टेस्ट शामिल हो सकते हैं:

  • यह जांच करता है कि आपके डिवाइसों और उनकी विशेषताओं के लिए, Report State और Request Sync लागू किए गए हैं या नहीं.

  • यह पुष्टि करता है कि आपके डिवाइस के लिए, QUERY इंटेंट लागू किया गया है और इसके नतीजे, Report State के नतीजों से मेल खाते हैं.

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 इंटिग्रेशन को सर्टिफ़ाई करना है, तो Report State/Request Sync Timeout की डिफ़ॉल्ट वैल्यू में कोई बदलाव न करें. हालांकि, टेस्टिंग के लिए, टाइम आउट की वैल्यू बदली जा सकती है. ऐसा तब किया जा सकता है, जब आपका एजेंट Home Graph को स्थिति की जानकारी देने में ज़्यादा समय लेता हो.
    2. Cloud-to-cloud इंटिग्रेशन को सर्टिफ़ाई करते समय, पक्का करें कि सिंक करने का अनुरोध टेस्ट करें विकल्प चालू हो. टेस्टिंग के दौरान, आपसे डिवाइस जोड़ने, अपडेट करने या हटाने के लिए कहा जाएगा. साथ ही, यह देखने के लिए कहा जाएगा कि Home Graph में डिवाइस की सूची बदली है या नहीं. बदलाव की कार्रवाइयां, उस इंटिग्रेशन के ज़रिए की जाती हैं जिसकी जांच की जा रही है. जिस इंटिग्रेशन की जांच की जा रही है उसमें एजेंट उपयोगकर्ता से कम से कम एक डिवाइस हमेशा जुड़ा होना चाहिए.

    3. अगर Scene trait का इस्तेमाल किया जा रहा है, तो Test Scene trait को चुनें.

    4. अगर Local Home डिवाइसों के लिए टेस्ट सुइट चलाया जा रहा है, तो Local Home SDK के साथ काम करता है को चुनें.

      1. Local Fulfillment या आसान सेटअप को चुनें.
      2. अगर डिवाइस, QUERY इंटेंट को स्थानीय तौर पर हैंडल कर सकता है, तो Supports Local 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.
देखें कि समयसीमा खत्म होने वाले ऐक्सेस टोकन में रीफ़्रेश टोकन है या नहीं. अगर ऐक्सेस टोकन की समयसीमा खत्म होने वाली है, तो रीफ़्रेश टोकन देना ज़रूरी है. अगर कोई रीफ़्रेश टोकन नहीं मिलता है, तो यह टेस्ट पूरा नहीं हो पाएगा.

टोकन की पुष्टि करने के लिए टेस्ट को रीफ़्रेश करना

रीफ़्रेश टोकन की जांच की जाती है, ताकि यह पक्का किया जा सके कि आपका टोकन एक्सचेंज एंडपॉइंट, उन्हें नए ऐक्सेस टोकन के लिए सही तरीके से एक्सचेंज करता है.

टेस्ट आइटम स्पष्टीकरण
अमान्य रीफ़्रेश टोकन के साथ टोकन रीफ़्रेश किया जा रहा है. पार्टनर के जवाब की जांच की जा रही है. अमान्य रीफ़्रेश टोकन के अनुरोध के लिए, आपके सर्वर को {"error": "invalid_grant"} के साथ एचटीटीपी 400 Bad Request गड़बड़ी दिखानी चाहिए. अगर जवाब, "गड़बड़ी के कोड या मैसेज" से मैच नहीं होता है, तो यह टेस्ट केस फ़ेल हो जाएगा. ज़्यादा जानकारी के लिए, ऐक्सेस टोकन के लिए रीफ़्रेश टोकन एक्सचेंज करना पर जाएं.
जांच करें कि टोकन रीफ़्रेश होने के बाद, ऐक्सेस टोकन अपडेट हुआ है या नहीं. रीफ़्रेश टोकन के अनुरोधों के जवाब में, नए ऐक्सेस टोकन मिलने चाहिए. अगर आपका सर्वर एक ही ऐक्सेस टोकन देता है, तो टेस्ट केस फ़ेल हो जाएगा.
देखें कि जिस ऐक्सेस टोकन की समयसीमा खत्म नहीं हुई है वह अब भी मान्य है या नहीं. ऐक्सेस टोकन की समयसीमा खत्म होने का समय दिखेगा.
देखें कि रीफ़्रेश करने के दौरान, रीफ़्रेश टोकन को रोटेट किया गया है या नहीं. हम यह जांच करते हैं कि रीफ़्रेश टोकन के अनुरोध के बाद, रीफ़्रेश टोकन बदले गए हैं या नहीं. अगर रीफ़्रेश टोकन बदलता है, तो आपके सर्वर को नए रीफ़्रेश टोकन का इस्तेमाल करने के बाद ही, पुराने रीफ़्रेश टोकन को अमान्य करना चाहिए. इससे रेस कंडिशन को रोका जा सकता है. इनकी वजह से, उपयोगकर्ता का खाता लिंक करने की प्रोसेस टूट सकती है. अगर नए रीफ़्रेश टोकन का इस्तेमाल करने से पहले, पुराने रीफ़्रेश टोकन को अमान्य कर दिया जाता है, तो टेस्ट फ़ेल हो जाएगा.

गड़बड़ी के मैसेज

यहां दी गई टेबल में, गड़बड़ी के कुछ ऐसे मैसेज दिए गए हैं जो आपको दिख सकते हैं. साथ ही, उन्हें ठीक करने का तरीका भी बताया गया है.

गड़बड़ी का मैसेज समस्या को हल करने का तरीका
HomeGraph API को प्रोजेक्ट <_id_> में पहले कभी इस्तेमाल नहीं किया गया है या यह बंद है पक्का करें कि आपने HomeGraph API चालू किया हो.
अनुरोध की गई इकाई नहीं मिली देखें कि आपका agentUserId मान्य हो और आपकी सेवा से लिंक हो.

पक्का करें कि आपके पास प्रोजेक्ट ${your project id} के लिए, resourcemanager.projects.get अनुमति हो. साथ ही, आपने सहमति वाली स्क्रीन पर सभी अनुमतियां दी हों.

Error getting module data: getModuleData error: Http failure response for https://hometestsuiteproxy-pa.googleapis.com/v1/module:get: 403 OK 403

  1. आईएएम अनुमतियों से जुड़ी समस्या हल करना पेज पर दिए गए निर्देशों का पालन करके, पक्का करें कि आपके खाते के पास प्रोजेक्ट के लिए resourcemanager.projects.get अनुमतियां हों.
  2. ऐसे ऐप्लिकेशन जिनके पास आपके खाते का ऐक्सेस है पेज पर जाएं. इसके बाद, "स्मार्ट होम के लिए टेस्ट सुइट" के लिए, इन अनुमतियों की जांच करें:
    • खाते की बुनियादी जानकारी
      1. आपके Google खाते का मुख्य ईमेल पता देखना
      2. आपकी निजी जानकारी देखना. इसमें वह जानकारी भी शामिल है जिसे आपने सार्वजनिक तौर पर उपलब्ध कराया है
    • अन्य ऐक्सेस
      1. आपके Assistant का इस्तेमाल करना: आपके Google खाते का ज़्यादा ऐक्सेस
      2. आपके होम ग्राफ़ में शामिल स्मार्ट होम डिवाइसों की जांच करना और उन्हें कंट्रोल करना
    अगर आपको अनुमति से जुड़ी गड़बड़ी का मैसेज मिलता है, तो पहले ऐक्सेस हटाएं. इसके बाद, फिर से साइन इन करते समय, सहमति वाली स्क्रीन पर सभी अनुमतियां दें.

जांच के नतीजे सबमिट करना

सर्टिफ़िकेशन के लिए सबमिट करने से पहले, आपके Test Suite के नतीजे 100% टेस्ट पास करने चाहिए. अगर आपके पास ऐसी कोई सुविधा है जिसकी मैन्युअल तरीके से जांच करनी ज़रूरी है, तो आपको Test Suite टूल को चलाना चाहिए. साथ ही, नतीजा 100% पास न होने पर भी उसे अटैच करना चाहिए.

टेस्ट के नतीजे सबमिट करने और Cloud-to-cloud इंटिग्रेशन को सर्टिफ़ाई करने के लिए, यह तरीका अपनाएं:

  1. जांच के नतीजे मिलने के बाद, जब आप Cloud-to-cloud इंटिग्रेशन को सर्टिफ़ाई करने के लिए तैयार हों, तब Test Suite टूल में जाकर सबमिट करें पर क्लिक करें.
  2. Google Home Developer Console > Cloud-to-cloud > सर्टिफ़िकेट पाएं पर जाएं.
  3. वह इंटिग्रेशन चुनें जिसे आपको सर्टिफ़ाई करना है.
  4. दस्तावेज़ में जाकर, अपना Test Suite नतीजे का आईडी डालें.
  5. सभी ज़रूरी फ़ील्ड भरें. इसके बाद, सबमिट करें पर क्लिक करें.