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 执行的测试包括但不限于:
您可以点击下面的按钮,启动 Test Suite 工具:
自行测试你的 Action
以下部分介绍了如何在设备和智能家居 Action 项目上运行 Test Suite。Test Suite 要求您登录,以便它可以检查 Google Home Graph and send commands directly to Google Assistant . 中的设备
如需自行测试你的 Action,请按以下步骤操作:
- 在网络浏览器中,打开 Test Suite。
使用右上角的按钮登录 Google。
配置项目详情:
- 在 Project ID 字段中,输入智能家居 Action 的项目标识符。
- 点击下一步。
配置测试设置:
- 如果你对智能家居 Action 进行了认证,请保留默认的报告状态/请求同步超时值。不过,为了进行测试,如果您的代理需要更多时间向 Home Graph 报告状态,您可以更改超时值。
如果要认证智能家居 Action,请确保已启用测试请求同步选项。在测试期间,系统会提示您添加、更新或移除设备,并检查 Home Graph 中设备列表是否已更改。更改操作通过您正在测试的集成进行。接受测试的集成必须始终至少有一个设备连接到代理用户。
)执行此操作如果您使用的是场景特征,请选择测试场景特征。
如果您运行的是 Local Home 设备的测试套件,请选择 Supports Local Home SDK。
- 选择 Local Fulfillment 或 Seamless Setup。
- 如果设备可以在本地处理 QUERY intent,请点击 Support Local Query。
执行 Test Run 并查看结果:
- 点击下一步以开始运行测试。界面会显示受测设备和特征。
查看结果和提交内容页面:
- 测试完成后,点击下一步以查看结果。
测试结果包括通过和失败的测试数量,以及表明通过百分比的最终得分。
帐号关联验证测试
帐号关联在 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.
|
检查过期的访问令牌是否有刷新令牌。 | 当访问令牌过期时,必须提供刷新令牌。如果找不到刷新令牌,此测试将失败。 |
刷新令牌验证测试
系统会测试刷新令牌,以确保您的令牌交换端点能正确将其交换为新的访问令牌。
测试项 | 说明 |
---|---|
具有无效刷新令牌的刷新令牌,正在检查合作伙伴响应。 | 您的服务器应向无效的刷新令牌请求返回包含 {"error": "invalid_grant"} 的 HTTP 400 Bad Request 错误。
如果响应与“错误代码或消息”不匹配,则此测试用例将失败。如需了解详情,请参阅
使用刷新令牌交换访问令牌。 |
测试访问令牌刷新后是否已更新访问令牌。 | 应返回新的访问令牌以响应刷新令牌请求。如果您的服务器提供相同的访问令牌,则测试用例将失败。 |
检查未过期的访问令牌是否仍然有效。 | 系统会显示访问令牌过期时间。 |
在刷新期间检查刷新令牌是否已轮替。 | 我们检查刷新令牌请求之后是否更改了刷新令牌。如果刷新令牌发生更改,则只有在使用完新的刷新令牌后,您的服务器才应使旧的刷新令牌失效,以防出现竞态条件可能破坏用户的帐号关联。如果您在使用新刷新令牌之前使其失效,则测试将失败。 |
错误消息
下表列出了您可能会遇到的一些常见错误消息以及建议的解决方法。
错误消息 | 解决方法 |
---|---|
之前未在项目 <_id_> 中使用过 HomeGraph API,或者该 API 已停用 | 确保您已启用 HomeGraph API。 |
找不到请求的实体 | 请检查您的 agentUserId 是否有效以及是否已与您的服务相关联。 |
请确保您对项目 获取模块数据时出错:getModuleData 错误:https://hometestsuiteproxy-pa.googleapis.com/v1/module:get: 403 OK 403 的 HTTP 失败响应 |
|
提交测试结果
您的 Test Suite 结果必须通过 100% 的测试,然后才能提交认证表单。如果您有任何特征需要手动测试,则您仍应运行 Test Suite 工具并附加结果,即使结果尚未达到 100% 也是如此。
如需提交你的测试结果并验证智能家居 Action,请按以下步骤操作:
- 收到测试结果并准备好对智能家居 Action 进行认证后,点击 Test Suite 工具中的 Submit。
- 点击下载测试结果按钮,以检索您的测试结果。
- 点击前往提交表单,向 Google 提交测试结果。
填写所有必填字段,然后点击提交。