有兴趣的学生信息系统 (SIS) 合作伙伴可以使用 GitHub 上的一致性测试来确定其产品是否符合 Google Classroom 的 OneRoster 使用要求。
访问和运行测试
如需运行测试,您需要满足以下条件:
- 用于检索 OAuth 2.0 凭据的令牌网址
- 以
/ims/oneroster/v1p1
结尾的 OneRoster 网址 - 客户 ID
- 客户端密钥
- 教师的电子邮件地址
您可以使用 Google Colab 或 Jupyter 笔记本运行测试。您可以在 Colab 和 Jupyter 笔记本中一次性运行所有测试。这有助于您生成测试结果,以便与 Google 课堂团队分享。
学生信息系统 (SIS) 要求和预期行为
Google 定义的测试旨在为有兴趣的学生信息系统 (SIS) 合作伙伴提供一种方法,以便确定其产品是否符合 Google 的 OneRoster 使用要求,并最大限度地减少用户在 Google 课堂中使用 SIS 集成时可能会遇到的错误。请仔细阅读以下有关测试的提示。在 GitHub 中,每项测试都有一个标题,指针会引用该标题。请注意,这些指南有助于阐明问题,但并非测试的完整列表。确保您已运行 GitHub 中提供的所有测试。
测试 | 指针 |
---|---|
教师:GetAllTeachers | 使用 limit 查询参数调用 GET /teachers 端点。在后续测试中,此参数用于确保您的产品可以支持页面大小为 10,000。 |
教师:使用电子邮件过滤条件调用 GetAllTeachers | 使用 filter 查询参数调用 GET /teachers 端点,该参数用于按教师电子邮件地址进行过滤。系统会使用您在测试的“凭据”部分提供的教师电子邮件地址。 |
类:GetClassesForTeacher | 使用 filter 查询参数调用 /teachers/{teacher_sourced_id}/classes 端点,该参数用于根据活跃类进行过滤。 |
学生:GetStudentsForClass | 系统会调用 GET /classes/{class_sourced_id}/students 端点。必须在响应中返回学生电子邮件地址。 |
GetGradingPeriodsForTerm | 使用 term_sourced_id 测试对评分周期的支持。此 term_sourced_id 用于通过调用 GET terms/{term_sourced_id}/gradingPeriods 端点检索学期的评分周期。 |
LineItem:创建 | 调用 PUT /lineItems/{line_item_sourced_id} 时不需要评分周期。 |
商品明细:修改 | 如果包含长作业标题,API 调用不应返回错误。测试包含长度超过 100 个字符的作业标题。 |
结果:修改 | 应该可以将 score 设置为大于 resultValueMax 的值,以表示额外学分。 |
结果:删除 | 必须提供 DELETE /results/{result_sourced_id} 端点。 |
LineItem(可选 / 清理):删除和获取 | DELETE /lineItems/{line_item_sourced_id} 端点不是必需的。它是可选的,用于数据清理。后续的 GET /classes/{class_sourced_id}/lineItems 端点也是可选的,用于测试订单项是否已被删除。 |
与 Google 课堂团队分享测试结果
运行测试后,系统会生成包含每个测试结果的完整报告。这些测试用于确定您的产品是否符合 Google 的 OneRoster 1.1 使用要求。下载生成的报告或截取其屏幕截图,以便与 Google 课堂团队分享。
获取支持
如有任何问题或疑虑,请发送电子邮件至 classroom-sis-external@google.com。