iOS के अन्य ऐप्लिकेशन के मुकाबले, Home APIs वाले ऐप्लिकेशन की अपनी अलग ज़रूरतें और चुनौतियां होती हैं. इनमें, स्मार्ट होम के फ़िज़िकल डिवाइसों पर निर्भरता, नेटवर्क की विश्वसनीयता, सुरक्षा और निजता, और डिवाइस और प्रोटोकॉल की इंटरऑपरेबिलिटी शामिल है. इन अंतरों का असर टेस्टिंग पर पड़ता है.
टेस्टिंग के लिए एनवायरमेंट सेट अप करना
Home APIs वाले ऐप्लिकेशन की टेस्टिंग के लिए, एक मज़बूत टेस्टिंग एनवायरमेंट होना ज़रूरी है.
टेस्टिंग के लिए इस्तेमाल किए जाने वाले डिवाइसों को, किसी अलग वाई-फ़ाई नेटवर्क पर आइसोलेट करना एक अच्छी रणनीति है. इससे, दूसरे डिवाइसों से होने वाली रुकावटों को रोका जा सकता है. साथ ही, बैंडविथ थ्रॉटल होने जैसी अलग-अलग नेटवर्क स्थितियों को सिम्युलेट किया जा सकता है.
आपको अलग-अलग निर्माताओं के स्मार्ट होम डिवाइसों के अलग-अलग टाइप का इस्तेमाल करके टेस्टिंग करनी चाहिए. पक्का करें कि टेस्टिंग, असली फ़िज़िकल डिवाइसों के साथ की जाए. वर्चुअल डिवाइसों और एम्युलेटर का इस्तेमाल किया जा सकता है, लेकिन सिर्फ़ इन पर निर्भर नहीं रहना चाहिए.
इसी तरह, अलग-अलग निर्माताओं के iOS डिवाइसों के साथ अपने ऐप्लिकेशन की टेस्टिंग करना, अलग-अलग स्क्रीन डाइमेंशन वाले डिवाइसों के साथ टेस्टिंग करना, और iOS के अलग-अलग वर्शन पर टेस्टिंग करना, ज़्यादा डिवाइसों के साथ कंपैटिबिलिटी की पुष्टि करने में मदद करता है.
अपने टूल इकट्ठा करना
Home APIs वाले ऐप्लिकेशन की टेस्टिंग में, ये टूल मददगार साबित होते हैं:
| टूल | ब्यौरा |
|---|---|
| Google Home Playground | यह असली फ़िज़िकल डिवाइसों के साथ टेस्टिंग का विकल्प नहीं है, लेकिन कई टेस्टिंग स्थितियों में यह बहुत काम का है. |
| Matter Virtual Device (MVD) | यह एक और एम्युलेशन ऐप्लिकेशन है, जो Home APIs वाले ऐप्लिकेशन में Matter डिवाइसों के साथ टेस्टिंग करने में मददगार हो सकता है. |
| नेटवर्क एम्युलेटर | इससे, नेटवर्क की अलग-अलग स्थितियों और एपीआई के जवाबों को सिम्युलेट किया जा सकता है. अगर क्लाउड बैकएंड का इस्तेमाल किया जाता है, तो यह खास तौर पर मददगार होता है. |
| TestFlight | इससे, यूआई टेस्टिंग को ऑटोमेट किया जा सकता है. हार्डवेयर इंटरैक्शन को सिम्युलेट करने के लिए, आपको एपीआई को मॉक करना होगा. |
| XCode Console | यह लॉग डेटा को हैंडल और उसका विश्लेषण करता है. |
| XCUIAutomation | इससे, यूआई टेस्टिंग को ऑटोमेट किया जा सकता है. हार्डवेयर इंटरैक्शन को सिम्युलेट करने के लिए, आपको एपीआई को मॉक करना होगा. |
टेस्टिंग के अलग-अलग तरीके और रणनीतियां अपनाना
आपको Home APIs वाले ऐप्लिकेशन की टेस्टिंग के लिए, अलग-अलग तरीके अपनाने चाहिए. अलग-अलग तरीकों के बारे में सामान्य जानकारी के लिए, TestFlight पर ऐप्लिकेशन की टेस्टिंग करना लेख पढ़ें. उपयोगकर्ता अनुभव और सुरक्षा की टेस्टिंग के अलावा, iOS के सभी ऐप्लिकेशन की टेस्टिंग की जाती है. हालांकि, Home APIs वाले ऐप्लिकेशन की टेस्टिंग के कुछ पहलू खास तौर पर अहम होते हैं. इनके बारे में ज़्यादा जानकारी, अगले सेक्शन में दी गई है.
फ़ंक्शन की जांच करना
अपने ऐप्लिकेशन की क्षमताओं के आधार पर, आपको इन पहलुओं पर खास ध्यान देना चाहिए:
- डिवाइस की खोज और उन्हें पेयर करना. इसमें, शुरुआती सेटअप और नए डिवाइसों के साथ पेयर करना, ऐप्लिकेशन रीस्टार्ट होने, डिवाइस रीबूट होने या नेटवर्क में बदलाव होने के बाद, मौजूदा डिवाइसों को फिर से खोजना शामिल है. साथ ही, उन स्थितियों की भी जांच करें जिनमें डिवाइस जवाब नहीं दे रहे हैं या उपयोगकर्ता गलत क्रेडेंशियल डाल रहा है.
- स्टेट सिंक्रनाइज़ेशन. पक्का करें कि ऐप्लिकेशन, मौजूदा स्थिति को सटीक तरीके से और समय पर अपडेट करता हो.
- अनुमतियों को कैसे मैनेज और लागू किया जाता है. खास तौर पर, अगर आपका ऐप्लिकेशन एक से ज़्यादा उपयोगकर्ताओं के साथ इस्तेमाल किया जा सकता है या होम ऐक्सेस शेयर किया जा सकता है. इसमें, यह पुष्टि करना शामिल है कि आपका ऐप्लिकेशन, रद्द की गई अनुमतियों को आसानी से हैंडल करता है.
- अगर आपका ऐप्लिकेशन सीन को सपोर्ट करता है, तो सीन बनाने, उनमें बदलाव करने, और उन्हें लागू करने की जांच करें. जैसे, "गुड नाइट" सीन, जिससे सभी लाइट बंद हो जाती हैं. ऑटोमेशन की जांच करें. इसमें स्टार्टर और कार्रवाइयां शामिल हैं.
परफ़ॉर्मेंस की जांच करना
पुष्टि करें कि आपका ऐप्लिकेशन रिस्पॉन्सिव है और इससे कोई गैर-ज़रूरी लेटेंसी नहीं होती. अगर मुमकिन हो, तो ज़्यादा डिवाइसों के साथ टेस्टिंग करें, ताकि स्केलेबिलिटी का आकलन किया जा सके. साथ ही, यह देखा जा सके कि लोड होने पर आपका ऐप्लिकेशन कैसा परफ़ॉर्म करता है. साथ ही, अपने ऐप्लिकेशन के सीपीयू, मेमोरी, और बैटरी के इस्तेमाल पर भी नज़र रखें. खास तौर पर, डिवाइस के साथ सक्रिय तौर पर कम्यूनिकेट करते समय, यह देखने के लिए कि संसाधनों का इस्तेमाल सही तरीके से हो रहा है या नहीं.
विश्वसनीयता और स्थिरता की जांच करना
नेटवर्क कनेक्टिविटी पर निर्भरता की वजह से, Home APIs वाले ऐप्लिकेशन की टेस्टिंग इन स्थितियों में की जानी चाहिए:
- नेटवर्क में उतार-चढ़ाव
- वाई-फ़ाई के बंद होने, कमज़ोर सिग्नल, और नेटवर्क स्विच करने की स्थितियों को सिम्युलेट करें.
- पुष्टि करें कि आपका ऐप्लिकेशन, डिसकनेक्शन और रीकनेक्शन को आसानी से हैंडल करता है.
- पुष्टि करें कि कनेक्टिविटी बहाल होने पर, कमांड की लाइन में लगे अनुरोध पूरे होते हैं या गड़बड़ी के सही मैसेज दिखते हैं.
- ऐप्लिकेशन की टेस्टिंग, सिर्फ़ होम नेटवर्क से नहीं, बल्कि रिमोट नेटवर्क से भी करें.
- डिवाइस का डिसकनेक्ट होना
- डिवाइसों को फ़िज़िकली अनप्लग करें.
- डिवाइसों को बंद करके फिर से चालू करें.
- एक साथ कई कार्रवाइयां
- कमांड की एक के बाद एक तेज़ी से लाइन भेजें.
- एक ही डिवाइस को कंट्रोल करने के लिए, एक साथ कई उपयोगकर्ताओं से अनुरोध भेजवाएं.
- ओवरलैप होने वाले सीन और ऑटोमेशन की जांच करें.
- गड़बड़ी ठीक करना
- एपीआई की गड़बड़ियां ज़बरदस्ती पैदा करें. जैसे, क्लाउड एपीआई सर्वर के जवाबों को मॉक करके.
- उपयोगकर्ता के अमान्य इनपुट की जांच करें.
- पुष्टि करें कि गड़बड़ी होने पर, ऐप्लिकेशन की परफ़ॉर्मेंस में गिरावट न हो और गड़बड़ी के बारे में जानकारी देने वाले मैसेज दिखें.
- विश्वसनीयता - ऐप्लिकेशन और कनेक्ट किए गए डिवाइसों को लंबे समय तक चलाएं, ताकि मेमोरी लीक या स्थिरता से जुड़ी समस्याओं का पता लगाया जा सके.
ऐप्लिकेशन लॉन्च करने से पहले
हमारा सुझाव है कि Home APIs का इस्तेमाल करने वाले ऐप्लिकेशन को लॉन्च करने से पहले, उसकी पूरी तरह से जांच करें. इससे यह पुष्टि की जा सकेगी कि वह फ़ंक्शन और क्वालिटी से जुड़ी सभी ज़रूरी शर्तों को पूरा करता है. अपने ऐप्लिकेशन के फ़ंक्शन की जांच करने के लिए, Google Home APIs वाले ऐप्लिकेशन की टेस्ट रिपोर्ट को गाइड के तौर पर इस्तेमाल करें.
अगर आपसे Google Home APIs वाले ऐप्लिकेशन की टेस्ट रिपोर्ट सबमिट करने के लिए कहा जाता है, तो रिपोर्ट को अपने Google Technical Account Manager (TAM) को भेजें. इससे वे रिपोर्ट की समीक्षा कर पाएंगे और आपके ऐप्लिकेशन की टेस्टिंग के दौरान, इसे रेफ़रंस के तौर पर इस्तेमाल कर पाएंगे.