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