【发布时间】:2019-03-02 10:12:34
【问题描述】:
为了改进我们的 QA 工作流程,我们希望在 Github 上为每个 pull-request 自动构建一个 APK 文件,以便我们可以在分支合并之前对其进行测试。我们已经想出了如何构建文件,但我们现在想知道如何将它集成到我们的工作流程中。
似乎大多数可用的 Beta 程序(例如 Crashlytics Beta、Google Play)主要集中在发布前不久创建一个 Beta 版本,但不允许并行托管多个 APK。
以下是我们理想工作流程的示例:
- 开发人员完成编码并创建拉取请求
- 测试运行
- 如果测试成功,则会自动构建一个 APK 并上传到某处(这是我们正在尝试解决的部分)
- QA 会查看拉取请求,应该能够在他们的测试设备上轻松下载正确的 APK
- 如果在 QA 期间没有问题,则合并拉取请求
- APK 文件被自动删除
我们特别不想在合并拉取请求后测试 APK,而是在我们的开发分支中弹出更少的错误之前进行测试。
【问题讨论】:
-
如果满足您的要求,我个人建议您由 Jenkins 完成这项工作:jenkins.io/solutions/android。
-
Fabric 插件内置了 gradle 命令,并与其他可以帮助您的工具集成:docs.fabric.io/android/beta/distribute-beta-builds.html。我对 GitHub 工作流程和 CI 不太熟悉(虽然知道很多概念),但不能对拉取请求进行额外检查,以运行某个命令,即在 Beta 版上分发 APK?
-
你能不能把 APK 通过电子邮件发送到某个邮件列表?
-
使用任何 CI/CD 服务器为每个拉取请求生成构建文件。
标签: android github continuous-integration qa