בדיקה וניפוי באגים באפליקציה

מומלץ ליצור את האפליקציה לניהול מלאי של חנויות מקומיות באמצעות השלבים שמתוארים למעלה, ואז לבדוק את השילוב של הבית החכם בסביבת האירוח שלכם באמצעות השלבים הבאים:

  1. בסביבת האירוח שלכם, מציגים את דף ה-HTML שמריץ את אפליקציית ההפעלה של ההזמנות המקומיות. בקטע הקוד הבא מוצגת דוגמה לקובץ HTML סטטי שמריץ את אפליקציית ההפעלה של ההזמנות המקומיות.

    <html>
      <head>
        <!-- Local Home SDK -->
        <script src="//www.gstatic.com/eureka/smarthome/smarthome_sdk.js"></script>
        <!-- Local app under development -->
        <script src="local_execution.js"></script>
      </head>
    
    </html>
  2. בדיקת השליטה במכשיר.

  3. ניפוי באגים מ-Chrome. כדי לפתור בעיות בשילוב, אפשר להשתמש בנקודות עצירה וברישומים.

  4. משנים את קוד ה-TypeScript, מהדרים אותו וחוזרים על השלבים האלה.

על ידי חזרה על תהליך הבנייה והבדיקה הזה, תוכלו לראות את השינויים שלכם בפעולה במהירות, וכך לנפות באגים בקוד.

בדיקת השליטה במכשיר

בGoogle Home Developer Console, צריך לציין את כתובת ה-URL של אפליקציית האינטרנט, שמציגה את ה-HTML שנטען במכשיר Google Home או במכשיר Google Nest במהלך ביצוע מקומי.

כדי לבדוק את השליטה במכשירים באמצעות מילוי הזמנות מקומי, פועלים לפי השלבים הבאים:

Chrome

  1. בדף הגדרה וקביעת תצורה של השילוב בין ענן לענן ב-Google Home Developer Console, גוללים אל הזמנות לאיסוף עצמי ומפעילים את ההגדרה.
  2. בקטע Testing URLs (כתובות URL לבדיקה) > Testing URL for Chrome (כתובת URL לבדיקה ב-Chrome), מציינים את כתובת ה-URL של שרת הפיתוח שמציג את קובץ ה-HTML שמפעיל את אפליקציית ההזמנות המקומיות.
  3. לוחצים על שמירה. יכול להיות שיעברו עד 30 דקות עד ש-Google תפיץ את השינויים שביצעתם במסוף.
  4. מפעילים מחדש את מכשיר Google Home או Google Nest שמשמש לבדיקה.
  5. מפעילים פקודה במכשיר החכם. לדוגמה, אם במכשיר שלכם מוגדר מאפיין OnOff, תוכלו לומר "Ok Google, turn on the lights".

Node.js

  1. בדף הגדרה וקביעת תצורה של Google Home Developer Console, גוללים אל הזמנות עם איסוף מקומי ומפעילים את ההגדרה.
  2. בקטע כתובות URL לבדיקה > כתובת URL לבדיקה של Node, מציינים את כתובת ה-URL של שרת הפיתוח שמפעיל את קוד ה-JavaScript של אפליקציית ההשלמה המקומית.
  3. לוחצים על שמירה. יכול להיות שיעברו עד 30 דקות עד ש-Google תפיץ את השינויים שביצעתם במסוף.
  4. מפעילים מחדש את מכשיר Google Home או Google Nest שמשמש לבדיקה.
  5. מפעילים פקודה במכשיר החכם. לדוגמה, אם במכשיר שלכם מוגדר מאפיין OnOff, תוכלו לומר "Ok Google, turn on the lights".

לפרטים נוספים על סביבת זמן הריצה שבה נעשה שימוש במכשיר, אפשר לעיין במאמר בנושא מכשירים נתמכים.

.

ניפוי באגים מ-Chrome

אפשר לנפות באגים באפליקציה לניהול הזמנות מקומיות באמצעות כלי הפיתוח ל-Chrome. לפני שמתחילים בניפוי באגים, צריך לוודא שהסביבה מוגדרת בצורה נכונה:

כדי לחבר את אפליקציית מילוי הבקשה המקומית לכלי פיתוח ל-Chrome, פועלים לפי השלבים הבאים:

Chrome

  1. במחשב הפיתוח המקומי, מתקינים ומפעילים את דפדפן Google Chrome.
  2. בשדה הכתובת בדפדפן Chrome, מפעילים את כלי הבדיקה של Chrome על ידי הקלדה של: chrome://inspect#devices. אמורה להופיע רשימת מכשירים בדף, וקובץ ה-HTML אמור להופיע מתחת לשם של מכשיר Google Home או מכשיר Google Nest לבדיקה.
  3. לוחצים על הקישור הכחול 'בדיקה' מתחת ל-HTML כדי להפעיל את כלי הפיתוח ל-Chrome. עוברים לכרטיסייה מסוף. פלטפורמת Local Home מוציאה את גרסת האפליקציה ואת גרסת Local Home SDK ב-console log. אם אתם רואים את היומן, זה אומר ש-Google טענה את האפליקציה שלכם בהצלחה ויכולה להתחבר אליה. אם לא, מפעילים מחדש את מכשיר Google Home או Google Nest.
  4. איור 1: אפליקציה מקומית לניהול הזמנות בדף chrome://inspect.

Node.js

  1. במחשב הפיתוח המקומי, מתקינים ומפעילים את דפדפן Google Chrome.
  2. קובעים את כתובת ה-IP המקומית של מכשיר הבדיקה.
  3. בשדה הכתובת בדפדפן Chrome, מפעילים את כלי הבדיקה של Chrome על ידי הקלדה של: chrome://inspect#devices.
  4. לוחצים על Configure... (הגדרה...) כדי לפתוח את Target discovery settings (הגדרות לאיתור יעדים).
  5. איור 2: הגדרות של איתור יעדים בכתובת chrome://inspect.
  6. מזינים DEVICE_IP_ADDRESS:9222 ברשימה ולוחצים על סיום.
  7. לוחצים על הקישור הכחול 'בדיקה' מתחת לסקריפט כדי להפעיל את כלי הפיתוח ל-Chrome. עוברים לכרטיסייה מסוף. פלטפורמת Local Home מוציאה את גרסת האפליקציה ואת גרסת Local Home SDK ב-console log. אם אתם רואים את היומן, זה אומר ש-Google טענה את האפליקציה שלכם בהצלחה ויכולה להתחבר אליה. אם לא, מפעילים מחדש את מכשיר Google Home או Google Nest.

לפרטים נוספים על סביבת זמן הריצה שבה נעשה שימוש במכשיר, אפשר לעיין במאמר בנושא מכשירים נתמכים.

טיפים לניפוי באגים

במהלך ניפוי הבאגים, חשוב לזכור את הנקודות הבאות:

  • אל תקשרו כמה מכשירי Google Home או Google Nest לחשבון הבדיקה שלכם באותה רשת מקומית. לא תוכלו לבחור את מכשיר Google Home או Google Nest שאליו יופנו הפקודות של ביצוע מקומי.
  • מרעננים את הדף בכלי פיתוח ל-Chrome כדי לטעון מחדש את מאגר האפליקציות של אפליקציית מילוי הבקשה המקומית עם הקוד העדכני מכתובת ה-URL של הפיתוח. הפעולה הזו לא מאפסת את פלטפורמת Local Home, וייתכן שיהיה צורך בכך כדי להפעיל מחדש כוונות של הפלטפורמה (כמו IDENTIFY) באפליקציית ההשלמה המקומית. כדי לאפס את פלטפורמת Local Home, צריך להפעיל מחדש את מכשיר Google Home או מכשיר Google Nest.
  • בודקים שאפליקציית ה-JavaScript נטענת ללא שגיאות. כדי לעשות את זה, בודקים את הקטע של המסוף בדף כלי הפיתוח. אם יש בעיה, תופיע הודעה כמו: 'Uncaught TypeError: Cannot read property 'open' of null.'
  • הערך verificationId מהתגובה IDENTIFY חייב להיות זהה לאחד מהערכים otherDeviceIds מהתגובה SYNC.
  • במקרה של EXECUTE handler, צריך לוודא שהמכשיר יכול לקבל את הפקודות של HTTP, ‏ TCP או UDP, ושהן פועלות כצפוי.
  • חשוב להחזיר Promise מה-handlers.
  • לא מומלץ לשמור מצב גלובלי בזיכרון. מחזור החיים של האפליקציה
  • שגיאות שמוחזרות מאפליקציית ההזמנות עם משלוח מהיר מהחנות יופיעו ביומני השגיאות של הפרויקט.

הכנה והשקה בסביבת ייצור

כשמוכנים להפעיל את הפעולה לבית חכם, פועלים לפי השלבים הבאים:

  1. פותחים טרמינל. בספריית הפרויקט, מריצים את הפקודה npm run build. הפקודה הזו יוצרת את חבילות ה-JavaScript הבאות לאפליקציה בספרייה dist:
    project-directory/
    └── dist
     ├── web
     │    └── bundle.js
     └── node
          └── bundle.js
    
  2. בדף הגדרה והגדרה של Google Home Developer Console, גוללים אל מילוי הזמנות מקומי ומפעילים את ההגדרה.
  3. באמצעות הלחצנים Upload JavaScript, מעלים את קובצי ה-bundle שיצרתם קודם.
    איור 3: העלאת אפליקציית JavaScript.
    חשוב להעלות את שתי הגרסאות של קובצי ה-bundle (Node, Web) כדי שהפעולה תוגדר לפעולה תקינה בכל סביבות זמן הריצה שנתמכות על ידי מילוי מקומי.
    1. העלאת קובץ JavaScript לטירגוט Node.js: מעלים את הקובץ bundle.js מהספרייה dist/node.
    2. העלאת קובץ JavaScript לטירגוט ב-Chrome (דפדפן): מעלים את הקובץ bundle.js מהספרייה dist/web.
  4. כדאי לבדוק את הפעולה במכשיר עם Assistant מובנית כדי לוודא שהיא מתנהגת כמו שציפיתם בסביבת ייצור. מידע נוסף זמין במאמר בנושא בדיקה ושיתוף של פעולות במכשירים לבית החכם.
  5. כשאתם מרוצים מהאופן שבו הפעולה פועלת, אתם יכולים לשלוח אותה ל-Google כדי לפרוס אותה בסביבת הייצור. לשם כך, פועלים לפי ההוראות במאמר הפעלת פעולה לבית חכם. התהליך כולל השלמת השלבים של הבדיקה העצמית ובקשת האישור.