博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
自己用Python写的iOS项目自动打包脚本
阅读量:4107 次
发布时间:2019-05-25

本文共 1558 字,大约阅读时间需要 5 分钟。

作者: 
链接:
来源:CC 
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。

什么?又要测试包!

做iOS开发几年了,每天除了码代码,改Bug之外,最让我烦恼的莫过于测试的妹子跑过来:“刚才的Bug都改完了吧,再打个包吧”。然而对于这个自己应尽的义务我已经烦透了,先不说要配置各种参数什么的,光是用xcode打包时候clean代码,验证证书就让我焦头烂额,时不时还要翻个墙甚至要手机开个热点才能打包成功。每次打包顺利的话,也要7~8分钟,每天n个包,想早点完成任务准时下班想都别想了。于是做了个打包的脚本(然后欢乐的像狗了)。好了,废话不多说,下面来介绍一下这个脚本,希望能给你带来方便。

脚本的地址: 

优点:

  1. 自动化打包,一句指令解决,节省大量打包时间

  2. 省去证书验证的无奈等待

  3. 自动上传到fir.im分发平台 //不用再发qq给测试人员了,如果你觉得不安全的话,fir.im是可以设置密码的

  4. 自动发送邮件给测试人员

  5. 有帮助指令,上手简单

准备工作:(工欲善其事必先利其器)

  • 安装xcode

  • 安装 fir.im的指令,见:

  • 安装python2.7,这个是mac系统自带的,如果不是2.7的话,可以升级一下

参数配置:(如果指令没安装好的话,goto 准备工作)

配置相关信息 python ipa.py -c 或者 python ipa.py --config ,后面需要修改的话也用这个指令

targetName:工程的名称,如:我的工程是BossZP.xcodeproj,所以我的targetName就是BossZP

gitPath:工程的git地址,如:我的git地址是

certificateName:证书名称,如:我的是iPhone Developer: YANG YU (7XC3UZCAZM)

firToken:在fir.im上创建应用后的token,如:我的是2ac8uf3j9z3ur98d7gxxxxxxxx

下面的是邮件设置:

emailFromUser:我的邮箱,如:

emailToUser:测试人员的邮箱,如:

emailPassword:我的邮箱的密码

emailHost:邮箱的host,可以去邮箱网页查看,如:我的是smtp.163.com

配置完信息,可以通过 --help 或者 -h 查看基本的使用方法

-h, --help 查看帮助信息

-c, --config 配置基本信息

-s, --showTags 显示git上所有的版本

-t TAG, --tag=TAG 设置打包时的版本

● 如果你不喜欢我把放在Documents下面,你可以把脚本的第28行改成你喜欢的目录,如:target_path = "/Users/yuyang/clone/BossZP"

你可以这样使用:

python ipa.py -h

python ipa.py --help

python ipa.py -c

python ipa.py --config

python ipa.py -s

python ipa.py --showTags

python ipa.py -t v3.0  //打包时候这样使用,后面的v3.0参数可以使用python ipa.py -s获取

python ipa.py -tag v3.0  //打包时候这样使用,后面的v3.0参数可以使用python ipa.py -s获取

python ipa.py (tag不写,默认是master)

最后自曝一下脚本的缺点吧,这个脚本只适合.xcodeproj的工程,workspace的还不支持,后续会慢慢改进。如果这个脚本能给你带来方便,顺手给个star吧,给我把它做的更好来点动力。

demo下载:

你可能感兴趣的文章
一些软件设计的原则
查看>>
最易出错的javascript面试题
查看>>
考考你的C/C++应用能力
查看>>
[转载]谈谈2011年度最佳代码
查看>>
海边的遐思 - 汪国真
查看>>
我喜欢出发 - 汪国真
查看>>
细数那些令人发狂的程序语言的特性
查看>>
网上支付原理
查看>>
何时提炼函数 & 用查询取代临时变量
查看>>
深入理解JSON:3分钟课程
查看>>
做企业为什么要建设自己的网站
查看>>
中小企业网站SEO应从网站建设开始做
查看>>
如何优化JavaScript脚本的性能
查看>>
京东今天还在用.NET架构的原因是什么?
查看>>
什么是“第一方Cookie”、“第三方Cookie”
查看>>
关于闭包及变量回收问题
查看>>
CSS语法简单入门
查看>>
javascript中的对象查找
查看>>
Google 面试中的古怪问题
查看>>
HTML5标准学习 – 文档结构
查看>>