Добро пожаловать в Центр разработчиков Google Home, новое место, где можно научиться разрабатывать действия для умного дома. Примечание. Вы продолжите создавать действия в консоли действий.

Набор тестов Google Home

Оптимизируйте свои подборки Сохраняйте и классифицируйте контент в соответствии со своими настройками.

Google Home Test Suite is a web application that allows you to self-test your smart home Action. The Test Suite automatically generates and runs test cases based on the devices and traits associated with your account. When you complete the tests, you can view the test results or fill in the submission form to submit the test results to Google.

Тесты, выполняемые Test Suite , включают, помимо прочего, следующее:

  • Проверяет, реализованы ли отчеты о состоянии и запрос синхронизации для ваших устройств и признаков.

  • Проверяет, что намерение QUERY реализовано для вашего устройства и его результаты соответствуют результатам отчета о состоянии.

Вы можете запустить инструмент Test Suite , нажав кнопку ниже:

Запустить Test Suite

Самопроверка своих действий

В следующем разделе описывается, как запустить Test Suite на вашем устройстве и в проекте Smart Home Action. Test Suite требует, чтобы вы вошли в систему, чтобы он мог проверять устройства в вашем Google Home Graph and send commands directly to Google Assistant .

Чтобы самостоятельно проверить свое действие, выполните следующие действия:

  1. В веб-браузере откройте Test Suite .
  2. Войдите в Google с помощью кнопки в правом верхнем углу.

  3. Настройте детали проекта :

    1. В поле Project ID введите идентификатор проекта для вашего умного дома Action.
    2. Нажмите «Далее» .
  4. Настройте параметры теста :

    1. Если вы сертифицируете действие «умного дома», оставьте значение по умолчанию « Отчет о состоянии/запрос синхронизации» без изменений. Однако для тестирования вы можете изменить значение тайм-аута, если вашему агенту требуется больше времени, чтобы сообщить о состоянии в Home Graph.
    2. Если вы сертифицируете свое действие умного дома, убедитесь, что параметр « Синхронизация тестового запроса » включен — во время тестирования вам будет предложено добавить, обновить или удалить устройство и проверить, не изменился ли список устройств в Home Graph. Действия по изменению происходят через интеграцию, которую вы тестируете. В вашей тестируемой интеграции всегда должно быть хотя бы одно устройство, подключенное к пользователю агента.

    3. Если вы используете черту сцены , выберите черту тестовой сцены .

    4. Если вы запускаете набор тестов для устройств Local Home, выберите Supports Local Home SDK .

      1. Выберите локальное выполнение или бесшовную настройку .
      2. Нажмите « Поддерживает локальный запрос» , если устройство может обрабатывать намерение QUERY локально.
  5. Выполните тестовый прогон и просмотрите результаты:

    1. Щелкните Далее , чтобы начать выполнение тестов. Интерфейс показывает тестируемые устройства и признаки.
  6. Просмотрите страницу результатов и отправки :

    1. После завершения тестов нажмите « Далее », чтобы просмотреть результаты.

Результаты теста включают количество пройденных и непройденных тестов, а также окончательный балл, указывающий процент прохождения.

Проверка привязки аккаунта

Связывание учетных записей играет важную роль в экосистеме умного дома Google. Тест проверки привязки учетной записи в Test Suite проверяет вашу службу OAuth на наличие потенциальных проблем.

Тест проверки привязки учетной записи содержит тесты для проверки маркеров доступа и маркеров обновления :

Тест проверки токена доступа

Маркеры доступа, возвращенные из конечной точки обмена маркерами, проверяются, чтобы убедиться, что они имеют допустимый формат, и возвращаются с допустимым маркером обновления.

Тестовые задания Объяснение
Проверьте, является ли токен доступа форматом JWT Для привязки учетной записи Google не рекомендуются токены доступа формата JWT. Если формат JWT найден, отображается следующее предупреждение: The access token seems to be JWT, this is not good. Because it unnecessarily exposes information about partner implementation and we recommend opaque symmetric encrypted access token.
Убедитесь, что у токена доступа с истекающим сроком действия есть токен обновления. Токен обновления должен быть предоставлен, когда срок действия токена доступа истекает. Этот тест завершится ошибкой, если не будет найден токен обновления.

Обновить тест проверки токена

Токены обновления проверяются, чтобы убедиться, что конечная точка обмена токенами правильно обменивает их на новые токены доступа.

Тестовые задания Объяснение
Обновить токен с недопустимым токеном обновления, проверка ответа партнера. Ваш сервер должен вернуть ошибку HTTP 400 Bad Request с {"error": "invalid_grant"} на недопустимый запрос токена обновления. Если ответ не соответствует «коду ошибки или сообщению», этот тестовый пример завершится ошибкой. Посетите страницу токены обновления биржи, чтобы получить токены доступа для получения дополнительной информации.
Проверьте, был ли обновлен токен доступа после обновления токена. Новые маркеры доступа должны возвращаться в ответ на запросы маркеров обновления. Если ваш сервер предоставляет тот же токен доступа, тестовый пример завершится ошибкой.
Проверьте, действителен ли неистекший токен доступа. Отобразится время истечения срока действия токена доступа.
Проверьте, не менялся ли токен обновления во время обновления. Мы проверяем, изменяются ли токены обновления после запроса токена обновления. Если токен обновления изменяется, ваш сервер должен аннулировать старый токен обновления только после того, как был использован новый токен обновления, чтобы предотвратить условия гонки, которые могут нарушить привязку учетной записи пользователя. Тест завершится ошибкой, если вы аннулируете старый токен обновления до того, как будет использован новый.

Сообщения об ошибках

В следующей таблице перечислены некоторые распространенные сообщения об ошибках, с которыми вы можете столкнуться, и предлагаемые способы их устранения.

Сообщение об ошибке Как решить
HomeGraph API ранее не использовался в проекте <_id_> или отключен Убедитесь, что вы включили HomeGraph API .
Запрошенный объект не найден Убедитесь, что ваш agentUserId действителен и связан с вашей службой.
Убедитесь, что у вас есть разрешение resourcemanager.projects.get для проекта ${your project id} и вы предоставили все разрешения на экране согласия.
  1. Следуйте инструкциям в разделе Устранение неполадок с разрешениями IAM , чтобы убедиться, что у вашей учетной записи есть разрешения resourcemanager.projects.get для проекта.
  2. Перейдите на страницу Приложения с доступом к вашей учетной записи , чтобы проверить следующие разрешения для «Тестового набора для умного дома»:
    • Основная информация об учетной записи
      1. Просмотр основного адреса электронной почты аккаунта Google
      2. Просматривайте свою личную информацию, включая любую личную информацию, которую вы сделали общедоступной.
    • Дополнительный доступ
      1. Используйте своего Assistant : широкий доступ к вашей учетной записи Google
      2. Проверяйте и контролируйте устройства умного дома в своем домашнем графике
    Если кого-то не хватает, сначала удалите доступ и предоставьте все разрешения на экране согласия при повторном входе в систему.

Отправить результаты теста

Ваши результаты Test Suite должны пройти 100 % тестов перед отправкой формы сертификации . Если у вас есть какие-либо черты, требующие ручного тестирования, вам все равно следует запустить инструмент Test Suite и прикрепить результат, даже если он не прошел на 100%.

Чтобы отправить результаты теста и сертифицировать действие умного дома, выполните следующие действия:

  1. После того, как вы получите результаты теста и будете готовы сертифицировать действие «Умный дом», нажмите « Отправить » в инструменте Test Suite .
  2. Нажмите кнопку ЗАГРУЗИТЬ РЕЗУЛЬТАТЫ ТЕСТА , чтобы загрузить результаты теста.
  3. Нажмите ПЕРЕЙТИ К ФОРМЕ ОТПРАВКИ , чтобы отправить результаты теста в Google.
  4. Заполните все необходимые поля, затем нажмите « Отправить ».