如何用jenkins实现自动化构建新版本和二维码下载
最近公司开发了自己的app,研发过程中对于测试人员来说,经常会像开发的人员询问,有没有最新的包啊(apk打包后的新版本),以免你测试的时候,提交了一些缺陷,实际上人家已经解决了。当然你也可以说你们公司开发流程也太乱了。发布新版本不是应该按时,按计划的执行测试么。
实际情况确实是一天多个版本 或者好几天给一个版本。(敏捷测试推行,但是推行的不是很到位时候就这样)
这就有了一个痛点,我们测试人员能不能直接打包apk,并且把保持每天的版本都是最新的。
以安卓版本为例,ios,暂没成功配置。
需求是我们希望能够扫一扫就能安装到手机,不用找开发的要apk 然后数据线什么的。。
无意中在testhome 看到一个帖子正好解决了这个问题。https://testerhome.com/topics/5285(主要内容看这帖子)
于是乎我就照着做了,真的挺不错。
首先我们先讲一下原理,jenkins 是一个持续集成的工具。能够帮助我们从服务器上拉取最新的代码,然后执行一些脚本命令,执行后,反馈结果。这一切都可以定时 按计划的进行。
这个需求核心的技巧就在如何打包成apk 并上传到服务器,然后返回我们一个下载地址(二维码)
也就是Jenkins build 这一步的命令。这里我要分享的是fir.im平台。这是一个内测应用平台。
用命令行就可以实现 打包 上传apk 并返回一个二维码。
我也只是补充一下这一段内容,因为文中提到的帖子其他内容很详细了。
fir.im平台有个自己的工具https://github.com/FIRHQ/fir-cli,这个是基于ruby语言写的。所以你需要配置ruby环境。
ruby装好后 gem install fir-cli 类似python 中pip install 。当然你要保证你的ruby和gem版本为新版本。另外由于大家都懂的原因。你可能需要一个镜像。http://gems.ruby-china.org/ 替换服务器地址后。下载才能继续执行。

安装好之后 这个命令就可以打包并上传了。详情见这里https://github.com/FIRHQ/fir-cli/blob/master/doc/build_apk.md
Token 是一个fir .im 平台识别的你身份信息的字符串。注册并登录后就可以获取自己账户的token了
其实本质上 fir只是一层封装,本质上还是用的gradle去打包apk。所以一旦报错,按提示一步步解决,多半是sdk android的包不全,或者是gradle 配置不正确。
执行

最后返回的图片
想办法用脚本放到服务器对应的位子就可以啦啦。 set build description 是个jenkins插件。
然后就是这个效果啦。
如何用jenkins实现自动化构建新版本和二维码下载的更多相关文章
- jenkins 安卓打包生成二维码下载
先来张图看看吧 构思 jenkins gradle 打包apk文件,python myqr 模块生成二维码 放入nginx 访问图片的路径,apk安装包放在 nginx 下载目录. 环境 centos ...
- 巧用 CSS 构建渐变彩色二维码
今日,群里有个很有意思的问题,问我如何实现一个彩色的,带渐变的二维码,像是这样: 很有意思的问题,我们在百度谷歌,搜索 qrcode,能搜到非常多在线制作二维码的工具,它们其中一些也会带有制作渐变二维 ...
- 如何用C代码生成二维码
如何用C代码生成二维码 当下因微信和支付宝等手机应用广泛使用,而基于二维码/一维条码的移动支付,也借助手机移动端席卷全国,使得越来越多的人知道有"二维码"这么一种东西. 对于普通用 ...
- Jenkins配置自动化构建
转自: http://blog.sina.com.cn/s/articlelist_3053349671_14_1.html Jenkins 简介和安装(一) (2014-12-02 21:18:13 ...
- 如何用.NET生成二维码?
二维码是用某种特定的几何图形按一定规律在平面(二维方向上)分布的黑白相间的图形记录数据符号信息的,国外对二维码技术的研究始于20世纪80年代末,在二维码符号表示技术研究方面已研制出多种码制,常见的有P ...
- Jenkins生成APK链接的二维码
Window环境 1.下载安装Python如3.7.5版本,安装Python到电脑上如C:\Python37,将C:\Python37,C:\Python37\Scripts添加到Path环境变量中 ...
- 使用Jenkins配置自动化构建
持续集成是个简单重复劳动,人来操作费时费力,使用自动化构建工具完成是最好不过的了. 为了实现这个要求,我选择了Jenkins. 从http://mirrors.jenkins-ci.org/windo ...
- 用Jenkins配置自动化构建
公司培训内容 -------------->记一笔 dubbo 微服务soadiamond-server 配置中心kafka rocketmq消息队列cas-server 单点登录spring ...
- 使用Jenkins+gitlab自动化构建时排除分支
我们的目的是gitlab上的代码有变动时会自动向Jenkins发送web钩子请求,触发指定的动作: 但默认情况下,所有分支(如测试环境和预生产)的代码有变动时都会触发,此时可以在Jenkins的项目设 ...
随机推荐
- ThinkPHP的D方法和M方法的区别
M方法和D方法的区别 ThinkPHP 中M方法和D方法都用于实例化一个模型类,M方法 用于高效实例化一个基础模型类,而 D方法 用于实例化一个用户定义模型类. 使用M方法 如果是如下情况,请考虑使用 ...
- SQL注入处理
/// <summary> /// SQL注入处理 /// </summary> /// <param name="rowFilter">< ...
- 超详细的Xcode代码格式化教程,可自定义样式
为什么要格式化代码 当团队内有多人开发的时候,每个人写的代码格式都有自己的喜好,也可能会忙着写代码而忽略了格式的问题. 在之前,我们可能会写完代码后,再一点一点去调格式,很浪费时间. 有了ClangF ...
- HDU1003 简单DP
Max Sum Problem Description Given a sequence a[1],a[2],a[3]......a[n], your job is to calculate the ...
- ZeroMQ接口函数之 :zmq_poll - I/O多路技术
ZeroMQ 官方地址 :http://api.zeromq.org/4-0:zmq_poll zmq_poll(3) ØMQ Manual - ØMQ/4.1.0 Name zmq_poll ...
- 常用SQL脚本操作
SQL 脚本创建数据库.表及简单查询 --------------------------------------------------------------------------------- ...
- sqlserver跨服务器数据库sql语句
1.启用Ad Hoc Distributed Queries:exec sp_configure 'show advanced options',1reconfigureexec sp_configu ...
- HTML 5 画布(canvas)
canvas 元素使用 JavaScript 在网页上绘制图像,本身是没有绘图能力. canvas 是一个矩形区域,可以控制其每一像素. canvas 拥有多种绘制路径.矩形.圆形.字符以及添加图像的 ...
- java和js根据一个或者多个空格截取字符串
java: String str = "张三 fw1234"; String s[] = str.split("\\s+"); js: var str=&quo ...
- POJ 3177 Redundant Paths(边双连通的构造)
Redundant Paths Time Limit: 1000MS Memory Limit: 65536K Total Submissions: 13717 Accepted: 5824 ...