Testowanie i debugowanie aplikacji

Zalecamy utworzenie lokalnej aplikacji do realizacji zamówień w podany niżej sposób. wcześniej, a następnie przetestuj integrację inteligentnego domu we własnym środowisku hostingowym. w ten sposób:

  1. We własnym środowisku hostingowym wyświetl stronę HTML, na której działa Twoja witryna do lokalnej realizacji zamówień. Ten fragment kodu zawiera przykładowy statyczny plik HTML która uruchamia lokalną aplikację do realizacji zamówień.

    <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. Przetestuj sterowanie urządzeniem

  3. Debuguj z Chrome. Użycie punktów przerwania i logów do: rozwiązywać problemy z integracją.

  4. Zmodyfikuj i skompiluj kod TypeScript, a następnie powtórz te kroki.

Powtarzając ten proces kompilacji i testowania, możesz zobaczyć wprowadzane zmiany w praktyce. możesz łatwiej i szybciej wychwycić i debugować problemy w kodzie.

Przetestuj sterowanie urządzeniem

W konsoli działań musisz podać adres URL swojej aplikacji internetowej, który będzie udostępnia kod HTML, który jest wczytywany na urządzeniu Google Home lub Google Nest podczas lokalnej realizacji.

Aby przetestować sterowanie urządzeniem za pomocą lokalnej realizacji, wykonaj te czynności:

Chrome

  1. Otwórz projekt inteligentnego domu w Konsoli Actions.
  2. W panelu nawigacyjnym po lewej stronie kliknij Działania.
  3. W sekcji Skonfiguruj lokalny domowy pakiet SDK (opcjonalnie) > Wpisz adres URL do testowania Chrome, określ serwer programistyczny Adres URL wyświetlający kod HTML uruchamiający lokalną aplikację do realizacji zamówień.
  4. Kliknij Zapisz. Google może potrzebować do 30 minut propagowanie zmian wprowadzonych w konsoli.
  5. Zrestartuj testowe urządzenie Google Home lub Google Nest.
  6. Wydaj polecenie na urządzeniu. Jeśli na przykład Twoje urządzenie wykorzystuje cechę OnOff, możesz powiedzieć „OK Google, włącz światło”.

Node.js

  1. Otwórz projekt inteligentnego domu w Konsoli Actions.
  2. W panelu nawigacyjnym po lewej stronie kliknij Działania.
  3. W sekcji Skonfiguruj lokalny domowy pakiet SDK (opcjonalnie) > Wpisz adres URL do testowania dla węzła, określ serwer programistyczny Adres URL udostępniający kod JavaScript, który uruchamia lokalną aplikację do realizacji zamówień.
  4. Kliknij Zapisz. Google może potrzebować do 30 minut propagowanie zmian wprowadzonych w konsoli.
  5. Zrestartuj testowe urządzenie Google Home lub Google Nest.
  6. Wydaj polecenie na urządzeniu. Jeśli na przykład Twoje urządzenie wykorzystuje cechę OnOff, możesz powiedzieć „OK Google, włącz światło”.

Szczegółowe informacje o tym, które środowisko wykonawcze jest używane przez urządzenie, znajdziesz w sekcji Obsługiwane urządzenia.

Debugowanie z Chrome

Lokalną aplikację do realizacji zamówień możesz debugować za pomocą Chrome Narzędzia deweloperskie. Zanim przeprowadzisz debugowanie, upewnij się, czy środowisko jest prawidłowo skonfigurowane:

  • Adres URL programowania w konsoli jest ustawiony na adres URL osiągalny przez Google Home lub Google Nest (w sieci lokalnej lub przez internet),
  • Komputer jest podłączony do tej samej sieci lokalnej co Urządzenie Google Home lub Google Nest, które testujesz.
  • Twoja sieć nie blokuje pakietów między urządzeniami.
  • korzystasz z tego samego konta Google w Konsoli Actions; na urządzeniu Google Home lub Google Nest.
  • Udało Ci się zaktualizować odpowiedź SYNC w chmurze realizację zamówień. Powinna zwrócić co najmniej 1 prawidłową wartość w polu otherDeviceIds.
  • wprowadzono prawidłową konfigurację skanowania, informacje w Konsoli Actions.

Aby połączyć lokalną aplikację do realizacji zamówień z debugerem Narzędzi deweloperskich w Chrome: wykonaj te czynności:

Chrome

  1. Na lokalnym komputerze do programowania zainstaluj i uruchom Przeglądarka Google Chrome
  2. W polu adresu przeglądarki Chrome uruchom inspektora Chrome. wpisując: chrome://inspect#devices. Powinna wyświetlić się lista urządzeń z i nazwa pliku HTML powinna być podana pod nazwą testu Google Home lub Google Nest.
  3. Kliknij niebieski link inspekcji pod kodem HTML, aby uruchomić Narzędzia deweloperskie w Chrome. Otwórz kartę Console (Konsola). Platforma Local Home przekazuje wersję aplikacji i pakiet SDK Local Home wersji w dzienniku konsoli. Jeśli widzisz ten dziennik, Google musi aplikacja została załadowana i może się z nią połączyć. Jeśli nie, zrestartuj urządzenie Google Home lub Google Nest.
  4. Rysunek 1. Lokalna aplikacja do realizacji zamówień na chrome://inspect.

Node.js

  1. Na lokalnym komputerze do programowania zainstaluj i uruchom Przeglądarka Google Chrome
  2. Ustal lokalny adres IP urządzenia testowego.
  3. W polu adresu przeglądarki Chrome uruchom inspektora Chrome. wpisując: chrome://inspect#devices.
  4. Wybierz Konfiguruj..., aby otworzyć Ustawienia wykrywania miejsc docelowych.
  5. Rysunek 2. Ustawienia wykrywania miejsc docelowych na stronie chrome://inspect.
  6. Wpisz DEVICE_IP_ADDRESS:9222 na liście i kliknij Gotowe.
  7. Kliknij niebieski link inspekcji pod skryptem, aby uruchomić Narzędzia deweloperskie w Chrome. Otwórz kartę Console (Konsola). Platforma Local Home przekazuje wersję aplikacji i pakiet SDK Local Home wersji w dzienniku konsoli. Jeśli widzisz ten dziennik, Google musi aplikacja została załadowana i może się z nią połączyć. Jeśli nie, zrestartuj urządzenie Google Home lub Google Nest.

Szczegółowe informacje o tym, które środowisko wykonawcze jest używane przez urządzenie, znajdziesz w sekcji Obsługiwane Urządzenia.

Wskazówki dotyczące debugowania

Oto kilka dodatkowych kwestii, o których warto pamiętać podczas debugowania:

  • Nie łącz kilku urządzeń Google Home ani Google Nest z kontem testowym na tym samym koncie przez sieć lokalną. Nie będziesz mieć możliwości decydowania, które urządzenia Google Home lub Google Nest są celem kierowania za pomocą lokalnych poleceń realizacji.
  • Odśwież stronę w Narzędziach deweloperskich w Chrome, aby ponownie załadować lokalny kontener aplikacji do realizacji zamówień za pomocą najnowszego kodu z adresu URL wersji deweloperskiej. Nie spowoduje to zresetowania Lokalna platforma główna, która może być wymagana do ponownego aktywowania intencji platformy (np. IDENTIFY) w lokalnej aplikacji do realizacji zamówień. Aby zresetować platformę Local Home, zrestartuj urządzenie Google Home lub Google Nest.
  • Sprawdź, czy aplikacja JavaScript wczytuje się bez błędów. W tym celu zaznacz w sekcji konsoli na stronie Narzędzia deweloperskie. Jeśli wystąpi problem, zobaczysz wiadomość podobną do tej: Uncaught TypeError: Cannot read property ‘open’ of null.
  • Wartość verificationId w odpowiedzi IDENTIFY musi być zgodna z jednym z tych elementów otherDeviceIds w odpowiedzi SYNC.
  • W przypadku modułu obsługi EXECUTE polecenia HTTP, TCP i UDP i działają zgodnie z oczekiwaniami.
  • Pamiętaj, aby zwrócić element Promise z modułów obsługi.
  • Unikaj zachowywania globalnego stanu w pamięci. Zobacz Cykl życia aplikacji.
  • Błędy zgłoszone przez lokalną aplikację do realizacji zamówień pojawią się w projekcie dzienniki błędów.

Przygotowanie i wdrożenie wersji produkcyjnej

Gdy wszystko będzie gotowe do uruchomienia inteligentnego domu, wykonaj te czynności:

  1. Otwórz terminal. W katalogu projektu uruchom polecenie npm run build. Polecenie to generuje następujące pakiety JavaScript dla Twojej aplikacji w kodzie Katalog domeny dist:
    project-directory/
    └── dist
     ├── web
     │    └── bundle.js
     └── node
          └── bundle.js
    
  2. Prześlij w konsoli aplikację JavaScript. Aby to zrobić, kliknij Programuj > Działania. W sekcji Skonfiguruj SDK do lokalnego domu kliknij Prześlij. JavaScript.
    Rys. 3. Przesyłanie aplikacji JavaScript
  3. W oknie Prześlij pliki prześlij pliki pakietów, które wcześniej były . Pamiętaj, aby przesłać obie wersje plików pakietu (Node, Web) aby akcja była skonfigurowana tak, aby działała prawidłowo w całym środowisku wykonawczym obsługiwanych przez lokalną usługę realizacji zamówień.
    1. Prześlij plik kierowania na kod JavaScript w Node.js: prześlij bundle.js z katalogu dist/node.
    2. Prześlij ustawienia kierowania na język JavaScript Chrome (przeglądarka): prześlij plik bundle.js z katalogu dist/web.
  4. Przetestuj akcję na urządzeniu z Asystentem, aby sprawdzić, czy się zachowuje. zgodnie z oczekiwaniami w środowisku produkcyjnym. Więcej informacji: Przetestuj i udostępnij działanie inteligentnego domu
  5. Jeśli podoba Ci się działanie Twojej akcji, prześlij ją do Google na wdrożenia produkcyjnego, wykonując instrukcje podane w Uruchom działanie inteligentnego domu. Ten obejmuje wykonanie kroków do samodzielnego testu i złożenia prośby o certyfikację.