網(wǎng)上有很多關(guān)于Jenkins持續(xù)化集成和單元測(cè)試的文章,但是在接入過(guò)程中,遇到了一些問(wèn)題,然而這些教程并不能很好的解決我的問(wèn)題,所以打算自己整理一篇。
一.環(huán)境說(shuō)明
搭建機(jī)器:一臺(tái)Mac Book Pro
開(kāi)發(fā)工具:XCode V8.0
開(kāi)發(fā)環(huán)境:OS X EI Capitan 版本 10.11.6
Jenkins版:V2.7.4
二.環(huán)境搭建
1:安裝jenkins
打開(kāi)終端,使用brew install jenkins進(jìn)行安裝,如果沒(méi)有安裝過(guò)homebrew環(huán)境的同學(xué),可以先學(xué)習(xí)安裝homebrew。
1)安裝 homebrew環(huán)境,$$ ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)”
2)brew install jenkins
安裝成功后,在/usr/local/Cellar/jenkins/1.646/libexec文件夾下,會(huì)有jenkins.war文件,表示安裝成功。PS:我用命令行安裝的Jenkins版本為V1.646,后來(lái)在Jenkins服務(wù)器中,更新升級(jí)為了V2.7.4。
3)運(yùn)行Jenkins,java -jar /usr/local/Cellar/jenkins/1.646/libexec/jenkins.war,為了方便,我寫(xiě)了個(gè)運(yùn)行Jenkins命令的別名:aliasjenkins='java -jar /usr/local/Cellar/jenkins/1.646/libexec/jenkins.war’,只有只要輸入jenkins就相當(dāng)于運(yùn)行Jenkins


Jenkins運(yùn)行成功之后,就可以用瀏覽器訪問(wèn)http://localhost:8080/地址

2:jenkins環(huán)境配置
安裝Jenkins插件:Xcode integration
系統(tǒng)管理/管理插件/可選插件,搜索安裝
PS:在已安裝插件中,可以更新升級(jí)的插件,最好選擇更新。
三.持續(xù)化集成
1:打包.ipa
接下來(lái)就是項(xiàng)目的持續(xù)化集成了
1、首先新建一個(gè)自由風(fēng)格的job

建完之后進(jìn)入job的配置界面

2、添加工程源碼管理,因?yàn)槲覀兊墓こ淌褂肰ersions,所以當(dāng)然選擇SubVersion啦~

3、在構(gòu)建中增加構(gòu)建步驟,對(duì)XCode進(jìn)行配置



4、配置完成后,保存,點(diǎn)擊立即構(gòu)建

當(dāng)構(gòu)建完成后,小圓點(diǎn)為藍(lán)色圖標(biāo),代表構(gòu)建成功,若失敗,可查看構(gòu)建日志,分析失敗原因

讓我們來(lái)看看在workspace/build文件夾中能否找到.ipa包

打包成功!
2:自動(dòng)上傳蒲公英
只需要在構(gòu)建完Xcode后,再增加構(gòu)建Execute shell(注意順序,不能錯(cuò))

保存,立即構(gòu)建,之后就能在蒲公英上看到自己上傳的測(cè)試包了。
四.單元測(cè)試的引入
我沒(méi)把單元測(cè)試和打包上傳蒲公英的Job合并到一起,是因?yàn)椴幌朊看螁卧獪y(cè)試的時(shí)候,都要上傳一次測(cè)試包,這樣每次構(gòu)建也很花時(shí)間。
1、和之前持續(xù)化集成的步驟相同,新建一個(gè)RiderTest的Job
2、配置SVN、Xcode。Xcode不配置打包相關(guān)的設(shè)置。
3、增加構(gòu)建Execute shell:
//因?yàn)楦夸洖閣orkspace,xcodebuild需要在Rider.xcworkspace所在目錄下進(jìn)行操作,所以要先cd到相應(yīng)路徑
cd Rider\ 4.1.0
//配置SDK、測(cè)試設(shè)備
xcodebuild test -workspace Rider.xcworkspace -scheme Rider -sdk iphonesimulator10.0 -destination OS=10.0,name="iPhone 6s plus" -configuration Debug 2>&1 | ocunit2junit
4、增加構(gòu)建后步驟

在第一次填寫(xiě)的時(shí)候,測(cè)試報(bào)告的路徑會(huì)標(biāo)紅,沒(méi)關(guān)系,這是因?yàn)槟菚r(shí)候還沒(méi)有進(jìn)行test,相應(yīng)目錄下沒(méi)有xml文件生成,之后點(diǎn)保存,立即構(gòu)建。
5、構(gòu)建成功后,在Job的主頁(yè)就能看到測(cè)試的結(jié)果
