持续集成 (CI) 是一种软件开发实践,开发人员会频繁地将他们的代码更改合并到一个中央存储库中,然后运行自动构建和测试。
您可以设置一个基本的 CI 系统来防止合并后破坏构建的新更改。您可以编写一个更高级的 CI 系统来自动测试应用,并确保它在不同的环境(例如 API 级别、屏幕尺寸和平台)中按预期运行。
本文档演示了开发人员为 Android 项目设置有效的 CI 系统所使用的常见策略。这些指南是通用的,适用于大多数解决方案。
典型示例
一个典型的 CI 系统遵循一个工作流或管道,可能如下所示
- CI 系统检测到代码中的更改,通常是在开发人员创建拉取请求时,也称为“更改列表”或“合并请求”。
- 它预配并初始化一个服务器来运行工作流。
- 它获取代码以及根据需要获取 Android SDK 或模拟器映像等工具。
- 它通过运行给定命令来构建项目,例如 .
/gradlew build
。 - 它通过运行给定命令运行本地测试,例如运行 .
/gradlew test
。 - 它启动模拟器并运行检测测试。
- 它上传工件,例如测试结果和 APK。
CI 的优势
CI 的优势包括
- 提高软件质量:CI 可以通过尽早识别和解决问题来帮助提高软件质量。这有助于减少软件版本中的错误数量并改善整体用户体验。
- 降低构建中断的风险:当您使用 CI 自动化构建过程时,您可以通过在流程早期解决问题来更好地避免构建中断。
- 增强对版本的信心:CI 可以帮助确保每次发布都稳定且已准备好投入生产。通过运行自动化测试,CI 可以在您将其发布给公众之前识别任何潜在问题。
- 改进沟通和协作:通过提供一个供开发人员共享代码和测试结果的中心位置,CI 可以帮助开发人员和其他团队成员更轻松地协作和跟踪进度。
- 提高生产力:CI 可以通过自动化原本耗时且容易出错的任务来帮助提高开发人员的生产力。
进一步阅读
有关如何使用持续集成来改善应用开发的更多信息,请阅读以下页面