בניגוד לסוגים אחרים של אפליקציות ל-Android, לאפליקציה של Home APIs יש שיקולים ואתגרים ייחודיים משלה, כולל תלות במכשירים פיזיים לבית חכם, אמינות הרשת, אבטחה ופרטיות, ויכולת פעולה הדדית של מכשירים ופרוטוקולים. להבדלים האלה יש השפעה על הבדיקה.
הגדרת סביבת הבדיקה
סביבת בדיקה חזקה חיונית לבדיקת אפליקציה של Home APIs.
אסטרטגיה טובה היא לבודד את מכשירי הבדיקה של Home API ברשת Wi-Fi ייעודית. כך אפשר למנוע הפרעות ממכשירים אחרים ולדמות תנאי רשת שונים, כמו רוחב פס מוגבל.
כדאי לבדוק את האפליקציה עם מגוון סוגים של מכשירים לבית חכם, מיצרנים שונים. חשוב לבדוק את האפליקציה במכשירים פיזיים אמיתיים. אמולטורים ומכשירים וירטואליים הם שימושיים, אבל לא כדאי להסתמך רק עליהם.
כדי לוודא שהאפליקציה תואמת למגוון רחב של מכשירים, כדאי לבדוק אותה במכשירים שונים עם מערכת Android, של יצרנים שונים, עם מסכים בגדלים שונים ועם גרסאות שונות של Android.
הכנת הכלים
הכלים הבאים יכולים לעזור לכם לבדוק אפליקציה שמשתמשת ב-Home APIs:
| כלי | תיאור |
|---|---|
| Google Home Plugin for Android Studio | מספק גישה אל Google Assistant Simulator, אל Home Graph Viewer, אל Google Cloud Logging ואל מציג היומנים של Android Debug Bridge (adb). |
| Google Home Playground | הוא לא תחליף לבדיקה במכשירים פיזיים אמיתיים, אבל הוא כלי חשוב מאוד להרבה תרחישי בדיקה. |
| Matter Virtual Device (MVD) | עוד אפליקציית אמולציה שיכולה לעזור כשבודקים מכשירי Matter באפליקציה של Home API. |
| Espresso | מאפשרת לבצע בדיקות אוטומטיות של ממשק המשתמש. צריך לדמות את ה-API הבסיסי כדי לדמות אינטראקציות עם החומרה. |
| אמולטור רשת | מאפשר לדמות תנאי רשת שונים ותגובות מה-API, וזה שימושי במיוחד אם Home API משתמש בקצה עורפי בענן. |
| Android Studio Logcat | טיפול בנתוני יומנים וניתוח שלהם. |
ליישם גישות ואסטרטגיות שונות של בדיקות
כדאי להשתמש במגוון גישות לבדיקת האפליקציה עם ממשקי ה-API לבית. למידע כללי על שיטות שונות, ראו בדיקת אפליקציות ב-Android. בנוסף לבדיקות של חוויית המשתמש והאבטחה שכל אפליקציות Android אמורות לעבור, יש כמה תחומים של בדיקות שרלוונטיים במיוחד לאפליקציות של Home APIs, והם מודגשים בפירוט רב יותר בסעיפים הבאים.
בדיקות פונקציונליות
בהתאם ליכולות של האפליקציה, כדאי לשים לב במיוחד לחלק מהתחומים הבאים:
- גילוי מכשירים והתאמה, כולל הגדרה ראשונית והתאמה עם מכשירים חדשים, גילוי מחדש של מכשירים קיימים אחרי הפעלה מחדש של האפליקציה, הפעלה מחדש של המכשיר או שינויים ברשת. כדאי גם לבדוק תרחישים כמו מכשירים שלא מגיבים או משתמש שמזין פרטי כניסה שגויים.
- סנכרון מצבים, כדי לוודא שעדכון לאפליקציה משקף את המצב הנוכחי באופן מדויק ובזמן.
- איך ההרשאות מנוהלות ונאכפות, במיוחד אם האפליקציה תומכת בריבוי משתמשים או בגישה משותפת לבית. זה כולל בדיקה שהאפליקציה מטפלת בצורה חלקה בהרשאות שבוטלו.
- אם האפליקציה תומכת בתרחישים, כמו תרחיש "לילה טוב" שמכבה את כל האורות, צריך לבדוק את היצירה, השינוי וההפעלה של התרחיש. לבדוק פעולות אוטומטיות, כולל גורמים מפעילים ופעולות.
בדיקת ביצועים
מוודאים שהאפליקציה רספונסיבית ולא גורמת לעיכובים מיותרים. אם אפשר, כדאי לבדוק עם מספר גדול של מכשירים כדי להעריך את יכולת ההתאמה לעומס (scalability) ואת ביצועי האפליקציה תחת עומס. כדאי גם לבדוק את צריכת המעבד (CPU), הזיכרון והסוללה של האפליקציה, במיוחד בזמן תקשורת פעילה של המכשיר, כדי לראות אם השימוש במשאבים סביר.
בדיקות אמינות ויציבות
בגלל שהאפליקציות של Home API תלויות בחיבור לרשת, צריך לבדוק אותן בתרחישים הבאים:
- תנודות ברשת
- הדמיה של ניתוקים ב-Wi-Fi, אותות חלשים ומעבר בין רשתות.
- מוודאים שהאפליקציה מטפלת בניתוקים ובחיבורים מחדש בצורה חלקה.
- מוודאים שהפקודות נכנסות לתור ומבוצעות כשהקישוריות חוזרת, או שמוצגות הודעות שגיאה מתאימות.
- בדקו את האפליקציה מרשתות מרוחקות, לא רק מהרשת הביתית.
- ניתוק המכשיר
- מנתקים את המכשירים פיזית.
- מפעילים מחדש את המכשירים.
- פעולות בו-זמניות
- שליחת רצף מהיר של פקודות.
- כמה משתמשים מנסים לשלוט באותו מכשיר בו-זמנית.
- בודקים תרחישים ופעולות אוטומטיות חופפים.
- טיפול בשגיאות
- לגרום לשגיאות ב-API, למשל על ידי הדמיה של תגובות משרת Cloud API.
- בודקים קלט לא תקין מהמשתמש.
- מוודאים שהפחתה חיננית (graceful degradation) והודעות שגיאה אינפורמטיביות פועלות.
- אמינות – מפעילים את האפליקציה ואת המכשירים המחוברים לפרקי זמן ארוכים כדי לגלות דליפות זיכרון או בעיות יציבות אפשריות.
לפני השקת האפליקציה
לפני שמשיקים אפליקציה שמשתמשת בממשקי Home API, מומלץ לבדוק אותה ביסודיות כדי לוודא שהיא עומדת בכל דרישות הפונקציונליות והאיכות. כדי לבדוק את הפונקציונליות של האפליקציה, אתם יכולים להיעזר בדוח בדיקת האפליקציה של Google Home APIs.
אם תתבקשו לשלוח את דוח הבדיקה של האפליקציה עם ממשקי ה-API של Google Home, שלחו את הדוח אל Technical Account Manager (TAM) ב-Google כדי שהם יוכלו לבדוק את הדוח ולהשתמש בו כקובץ עזר בזמן בדיקת האפליקציה.