这一套配下来,可以实现定时的或只要github有commit,Jenkins就会自动pull代码到本地,运行Appium执行测试脚本,成功后会自动打包到Fir.im上并发邮件通知你.
一:构建项目(General)
1.点击新建,如图1.
2.输入项目名称-点击构建一个自由风格的软件项目-点击OK,如图2
3.描述-Project url-Display name-丢弃旧的构建,如图3.
二:源码管理
1.Git(Jenkins原生不带这个插件,具体细节参考我的另一篇文章<Mac环境下怎么配置Jenkins>)-Repository URL(项目的 github地址)-Credentials(github的登录用户名和密码,点击Add添加就可)-Branch Specifier (这是是分支,你知道填对应分支名称就好),如图4.
三:构建触发器
1.Poll SCM(配置自动构建的时间),如图5.
解释下参数的意义以及怎么设置.
MINUTEMinutes within the hour (0–59) (分钟:0-59)
HOURThe hour of the day (0–23) (小时:0-23)
DOMThe day of the month (1–31) (号:1-31)
MONTHThe month (1–12) (月:1-12)
DOWThe day of the week (0–7) where 0 and 7 are Sunday. (周:0-7,0和7都是周日)
如图5,我设置:00 09 * * 1-5 就是每周一到周五早上9点自动打包.(值得注意的一点是:分钟,小时,号,月,周之间用空格隔开.)
四:构建环境.
这个一般的项目用不到,这里就不多说了.
五:构建
1.点击Xcode,如图6.
①.General build settings
1.Target(项目名称)-Clean before build-Configuration(Release/Debug),如图7.
2.Pack application and build .ipa?(打IPA包用于上传fir.im),.ipa filename pattern(包名)-Output directory(包输出路径),如图8.
②:Code signing & OS X keychain options
这个一般的项目用不到,这里就不多说了.
③:Advanced Xcode build options
1.Clean test reports?(删除之前的test报告)-Xcode Schema File(这里填写项目名称即可)-SDK(可以指定具体的SDK,用于测试打包,这里不填即可.)-Custom xcodebuild arguments(xcodebuild的参数,一般不用配),如图9.
2.Xcode Workspace File(如果你是用了pods,填.xcworkspace的路径,值得注意的是不用写后缀)-Xcode Project File(没用pods,填.xcodeproj的路径,同样不带后缀)-Build output directory-(build 输出路径,里面的包被Appium用来跑测试用例),如图10.
④:增加构件步骤
1.增加构建步骤-Execute shell(shell脚本),如图11.
2.配置shell脚本命令,如图12.
mocha ${WORKSPACE}/script/AppiumTest-iOS.js
${WORKSPACE} 是你的项目所在路径.
AppiumTest-iOS.js 是你写的js脚本.
如果你不需要当然也可以不配,如果需要请参照我写的<Mac环境下如何配置Appium>以及<Appium+Node.js编写测试用例>,安卓的可以看下<Appium+Eclipse编写测试用例>.
六:构建后步骤
①:构建Upload to fir.im
1.增加构建后操作步骤-Upload to fir.im,如图13.
2.你要有fir.im的账号,token获取,如图14.15
3.fir.im Token-IPA/APK Files (这个路径是在构建Xcode的时候.IPA的输出路径)-ExInclude IPA/APK File Name(这个是默认值,会在你上面指定的文件下选取ipa或者apk)-Build Notes(日志,这个你随便写),如图16.
②:E-mail Notification
1.增加构建后步骤:E-mail Notification,如图17.
2.Recipients(收件方邮箱地址),如图18.
邮箱的配置在系统管理-系统设置-邮件通知这里,需要配的可单独去搜资料配一下,最好是163的,因为qq的一般都不行.163服务器一段时间后也会认为发的邮件是垃圾邮件而停止发送,我目前也没找到好的解决方法.
如果还有不懂的地方可以私信或发邮件yuluqqcom@qq.com告知我,共同探讨,不胜荣幸.