בניגוד לסוגים אחרים של אפליקציות ל-iOS, לאפליקציה של Home APIs יש שיקולים ואתגרים ייחודיים משלה, כולל תלות במכשירים פיזיים לבית חכם, אמינות הרשת, אבטחה ופרטיות, ויכולת פעולה הדדית של מכשירים ופרוטוקולים. להבדלים האלה יש השפעה על הבדיקה.
הגדרת סביבת הבדיקה
סביבת בדיקה חזקה חיונית לבדיקת אפליקציה של Home APIs.
מומלץ לבודד את מכשירי הבדיקה ברשת Wi-Fi ייעודית. כך אפשר למנוע הפרעות ממכשירים אחרים ולדמות תנאי רשת שונים, כמו רוחב פס מוגבל.
כדאי לבדוק את האפליקציה עם מגוון סוגים של מכשירים לבית חכם, מיצרנים שונים. חשוב לבדוק את האפליקציה במכשירים פיזיים אמיתיים. אמולטורים ומכשירים וירטואליים הם שימושיים, אבל לא כדאי להסתמך רק עליהם.
באופן דומה, בדיקת האפליקציה במגוון מכשירי iOS של יצרנים שונים, עם מסכים בגדלים שונים וגרסאות שונות של iOS, עוזרת לוודא שהאפליקציה תואמת למגוון רחב יותר של מכשירים.
הכנת הכלים
הכלים הבאים יכולים לעזור לכם לבדוק אפליקציה שמשתמשת ב-Home APIs:
| כלי | תיאור |
|---|---|
| Google Home Playground | הוא לא תחליף לבדיקה במכשירים פיזיים אמיתיים, אבל הוא כלי חשוב מאוד להרבה תרחישי בדיקה. |
| Matter Virtual Device (MVD) | עוד אפליקציית אמולציה שיכולה לעזור כשבודקים מכשירי Matter באפליקציה של Home API. |
| אמולטור רשת | מאפשרת לדמות תנאי רשת שונים ותגובות מה-API, וזה שימושי במיוחד אם משתמשים בקצה עורפי בענן. |
| TestFlight | מאפשרת לבצע בדיקות אוטומטיות של ממשק המשתמש. צריך לדמות את ה-API הבסיסי כדי לדמות אינטראקציות עם החומרה. |
| XCode Console | טיפול בנתוני יומנים וניתוח שלהם. |
| XCUIAutomation | מאפשרת לבצע בדיקות אוטומטיות של ממשק המשתמש. צריך לדמות את ה-API הבסיסי כדי לדמות אינטראקציות עם החומרה. |
ליישם גישות ואסטרטגיות שונות של בדיקות
כדאי להשתמש במגוון שיטות בדיקה באפליקציה של Home APIs. מידע כללי על שיטות שונות זמין במאמר בדיקת אפליקציות ב-TestFlight. בנוסף לבדיקות של חוויית המשתמש והאבטחה שכל האפליקציות ל-iOS צריכות לעבור, יש כמה תחומים של בדיקות שרלוונטיים במיוחד לאפליקציות של 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 כדי שהם יוכלו לבדוק את הדוח ולהשתמש בו כקובץ עזר בזמן בדיקת האפליקציה.