51Testing软件测试论坛

标题: 如何实现 Android 应用的持续部署? [打印本页]

作者: 悠悠小仙仙    时间: 2017-6-15 13:45
标题: 如何实现 Android 应用的持续部署?
构建一个高质量的 Android 应用 最大的挑战是什么?
在整个开发流程中,也许 Coding 时莫名的 bug,也许是 Android 开发兼容性问题,多版本多渠道自动打包问题,也有开发工具选择等等。
每个不同段位的 Android 开发者,都会有不同的答案。如何自动化整个开发-打包-分发的流程也许真正需要思考。
这篇文章将通过实际的教程向大家展示使用 flow.ci实现 Android 应用自动化持续集成,并将 APK 文件部署到 fir.im 应用内测平台。内测分发完成后,使用 Webhook、邮件、Slack 通知参与测试的人员的一系列步骤,让你全自动化地完成整个开发流程。
了解 flow.ciflow.ci 是融入了 workflow 机制的持续集成(CI)服务,也可以理解为自动化流程平台,除了集成代码、编译、测试之外,还可以集成常用的工具、灵活自定义流程。1 分钟即可完成开发测试环境搭建,开启第一个 Build。
在 flow.ci,我们把项目的开发工作流称为 flow ,每个 flow 由触发器插件构成。系统根据不同的语言和环境提供对应的 flow 模版,触发器和插件。Flow 的自定义非常简单,只需要 One-Click 即可添加你需要的插件。它可能是一个代码静态分析检测工具(比如 Eslint),可能是一个数据库(比如 Mysql/MongoDB/Redis),也可能是一个消息通知插件(比如 邮件/Slack)等。
更专注于代码,其他的琐事交给 flow.ci 自动化完成吧
搭建 Android 应用的持续部署设置 Andr​​oid 持续部署流程非常简单:
1.创建项目



2.关联代码仓库



3.选择要集成的项目



4.开始你的第一个 Flow







选择项目类型 Android ,开启默认的 flow 模板 ,包括 Intialize - Git Clone - Cache - Build 的流程。
5.选择语言版本,单击创建项目



选择项目语言的版本,除了 Java for Android 外,flow.ci 提供 Node.js , Ruby , PHP , Python 的多语言、多版本的开发测试环境。
后续会支持更多语言。
6.点击“+”添加插件,自定义 flow



在环境和语言等初始配置完成后,flow.ci 会提供一套 基本 flow 模版,内含通用流程插件和流程触发设置。如果你有定制化的需求,点击图中“+”或者“删除”“编辑”,实时设置就可以。
7.在插件列表中搜索 Infer Analyzer 插件,选择添加



Infer Analyzer 是 Facebook 推出的 Java 静态代码分析工具,添加这个插件到你的 Flow 模板可以帮助拦截早期错误。
8. 继续添加 fir.im Uploader 插件



fir.im Uploader 插件将输出的 apk 文件上传到 fir.im  应用内测平台,添加这个插件需要添加你的 fir.im 账号的 API token。此外,该插件支持变量,可以直接拉取 github 的提交日志,作为版本更新日志。
9.完成后,还可以添加邮件、Slack等消息通知插件



实现这套自动化流程之后,只需要开发新功能,提交代码即可。图为跑完整个持续部署流程,健康的项目状态。


作者: 八戒你干嘛    时间: 2017-6-15 14:03
学习
作者: 悠悠小仙仙    时间: 2017-6-15 14:04
八戒你干嘛 发表于 2017-6-15 14:03
学习


作者: 岛屿soliloquy    时间: 2017-6-16 10:05
先进来学习,
Android的学习还很深。。。


————收藏帖,学习过程中又不懂的部分在询问版主




欢迎光临 51Testing软件测试论坛 (http://bbs.51testing.com/) Powered by Discuz! X3.2