在上篇文章——如何实现 Android 应用的持续部署中,使用 flow.ci + Github + fir.im 实现 Android 应用的持续部署。对于 Android 开发者,他们可能会在整个过程使用 Android 模拟器进行自动化测试。
所以,这次我们通过启动在 flow.ci 中的 Android 模拟器插件,同时将 connectedCheck 命令添加到构建插件的默认脚本中,以此来实现 Android 应用自动化测试与持续集成。
PS:如果您已经阅读过Android 的持续部署指南,或者你已经知道 flow.ci 的基础操作,请直接跳到第 7 步:)
flow.ci 是融入了 workflow 机制的持续集成(CI)服务,也可以理解为自动化流程平台,除了集成代码、编译、测试之外,还可以集成常用的工具、灵活自定义流程。1 分钟即可完成开发测试环境搭建,开启第一个 Build。
在 flow.ci,我们把项目的开发工作流称为 flow ,每个 flow 由触发器和插件构成。系统根据不同的语言和环境提供对应的 flow 模版,触发器和插件。Flow 的自定义非常简单,只需要 One-Click 即可添加你需要的插件。它可能是一个代码静态分析检测工具 (比如 Eslint),可能是一个数据库(比如 Mysql/MongoDB/Redis),也可能是一个消息通知插件(比如 邮件/Slack)等。
更专注于代码,其他的琐事交给 flow.ci 自动化完成吧 :)
选择项目类型 Android ,开启默认的 flow 模板 ,包括 Intialize - Git Clone - Cache - Build 的流程。
选择项目语言的版本,除了 Java for Android 外,flow.ci 提供 Node.js , Ruby , PHP , Python 的多语言、多版本的开发测试环境。
后续会支持更多语言。
默认生成插件不包括测试用例执行命令,因此你需要做简单自定义脚本,以便正常运行测试。
然后,删除默认 flow 模板里的 Build 插件。
在自定义脚本插件中,添加 “connectedCheck” 命令或者自己定义的 gradle 命令(提示:绿框)。同时可以通过点击标题栏修改文字来重命名该插件。然后,点击保存。
实现这套自动化流程之后,只需要开发新功能,提交代码即可。图为跑完整个自动化测试和持续集成的流程,健康的项目状态。
繁琐可循的任务就应该工具化自动化,这是程序员们的不懈追求。如果你也想体验 Android 应用的自动化测试与持续集成,来 http://flow.ci 首页提交申请,邀请码随后会发送到邮箱。
期待你的反馈。
Happy Building!
flow.ci team