本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
在 Device Farm 中运行测试APIs后使用 Webhook 和其他内容
在每个测试套件使用 curl 完毕后,您可以让 Device Farm 调用 webhook。执行此操作的过程因目的地和格式而异。对于您的特定 webhook,请参阅该 webhook 的文档。以下示例会在每次测试套件完成时向 Slack webhook 发布一条消息:
phases: post_test: - curl -X POST -H 'Content-type: application/json' --data '{"text":"Tests on '$DEVICEFARM_DEVICE_NAME' have finished!"}'
https://hooks.slack.com/services/T00000000/B00000000/XXXXXXXXXXXXXXXXXXXXXXXX
有关在 Slack 中使用 webhook 的更多信息,请参阅 Slack 参考中的使用 Webhook 发送第一条 Slack 消息
有关扩展测试套件和优化测试的更多方法,请参阅在 Device Farm 中扩展自定义测试环境。
您不仅局限于使用 curl 来调用 webhook。测试包可以包含额外的脚本和工具,前提是它们与 Device Farm 执行环境兼容。例如,您的测试包可能包含向其他人发出请求的辅助脚本APIs。确保将所有必需的软件包与测试套件的要求一起安装。要添加在测试套件完成后运行的脚本,请将该脚本包含在测试包中,并将以下内容添加到测试规范中:
phases: post_test: -
python post_test.py
注意
您有责任维护测试包中使用的任何API密钥或其他身份验证令牌。我们建议您将任何形式的安全凭证排除在源代码控制之外,使用权限尽可能少的证书,并尽可能使用可撤销的短期令牌。要验证安全要求,请参阅您APIs使用的第三方的文档。
如果您计划将 AWS 服务用作测试执行套件的一部分,则应使用在测试套件之外生成并包含在测试包中的IAM临时证书。这些证书应具有最少的授予权限和最短的生命周期。有关创建临时证书的更多信息,请参阅《IAM用户指南》中的申请临时安全证书。
有关扩展测试套件和优化测试的更多方法,请参阅在 Device Farm 中扩展自定义测试环境。