Appium Jenkins+Appium 搭建持续集成平台

oh_test · 2018年07月12日 · 最后由 Anson 回复于 2020年12月25日 · 2505 次阅读
  • 环境: 由于资源有限,jenkins 部署在本地 tomcat,UI 自动化项目使用 java 语言,主要只用了 appium.java_client 包和 selenium 的包。
  • 实现: jenkins 监听 git 代码分支,发生代码变动时->pull 代码->打包->安装到手机->启动 appium 环境->运行 UI 自动化项目->截图记录->运行结果发送到邮箱
  • Jenkins 配置: 教程很多,就不赘述,挑一些项目相关的实例。

1.配置 Git 代码仓库

2.配置构建触发器
触发器支持多种类型,常用的有:
定期进行构建(Build periodically)
根据提交进行构建(Build when a change is pushed to GitHub)
定期检测代码更新,如有更新则进行构建(Poll SCM)

3.构建脚本
这里修改了一些与发布的版本不同的,用于测试版本的代码。
eg:在 WebView 类上调用静态方法 setWebContentsDebuggingEnabled=true,启用 WebView 调试
最下面的一坨:划重点!java 带包执行,指明 import 类的位置,把 java 部分代码打包成 jar.
也是就是说 在这个步骤开始会触发运行我们的 UIAutomator 代码。

4.构建后处理
完成构建后,生成的编译成果物(ipa/apk)会位于指定的目录中,但不是所有都是我们需要的,这里只需要 apk.
在【Post-build Actions】栏目中新增 Archive the artifacts,然后在 Files to archive 中通过正则表达式指定成果物文件的路径。
设置完毕后,每次构建完成后,Jenkins 会在 Console Output 中采用设定的正则表达式进行搜索匹配,如果能成功匹配到文件,则会将文件收集起来。

5.最后的邮件长这个样子

至此,就可以每次在开发上线后,在家等着收邮件了😍

共收到 1 条回复 时间 点赞

问一下 Appium 你是怎么去启动的?通过 Jenkins 还是代码里命令行启动的?

需要 登录 后方可回复, 如果你还没有账号请点击这里 注册