2016-04-13 92 views

回答

0

術語「用於代碼管理的Xcode中的Jenkins」似乎不完全正確。因爲Jenkins服務器用於CI,我們在其中配置它(創建一個工作),從源代碼庫(SVN,GIT)獲取源代碼,然後編譯並運行,可能會執行單元測試,UI自動化測試或代碼覆蓋工具。

根據您的日程安排,Jenkins服務器將自動開始工作或在您的回購協議發生變化時觸發(例如,任何人提交代碼)。

您提到的Xcode中的工具可能是XCode Bots,即內置的CI工具。 爲了設置,首先,您必須安裝並配置XCode服務器。之後,將您的服務器與存儲庫連接起來。其次,使用您的自定義配置創建一個bot並運行它。

在我看來,就詹金斯和Xcode的比較而言,我認爲它取決於你想爲你的CI服務器設置哪些工具或加載項功能。詹金斯有許多插件可能對檢查風格有幫助,測量代碼覆蓋率,而Xcode bot仍然有一些限制。 此文檔爲https://developer.apple.com/library/ios/documentation/IDEs/Conceptual/xcode_guide-continuous_integration/供您進一步參考。

我希望這會對您有所幫助。

+0

很好的幫助。謝謝。 Jenkins/Xcode bot可以用於自動部署到AppStore嗎?如果是這樣,哪個插件? – Nitish

+0

我還沒有嘗試過,但是,我所做的是通過beta測試部署構建。如果您使用Jenkins,則需要使用分發證書,XCode插件配置作業,然後分發ipa二進制文件並通過TestFlight進行部署,但是,您需要運行一些自定義腳本。如果你使用XCode機器人,它會更容易。 – HDT

+0

忘了這個,你可以參考這篇關於詹金斯的文章http://blog.zymr.com/jenkins-integration-with-ios – HDT

2

我們正在使用Jenkins服務器進行連續性集成,通過提交此存儲庫觸發Jenkins時從SVN服務器獲取源代碼。

但是,要認真,我不會推薦詹金斯......我寧願使用Xcode的服務器/機器人擺脫所有與詹金斯的麻煩......

+0

不清楚你的第二點。你推薦Jenkins還是Xcode服務器? – Nitish

+0

我不推薦。對不起,錯字! :-) –

1

FASTLANE是一個工具讓iOS和Android開發人員自動執行繁瑣的任務,如生成屏幕截圖,處理配置文件並釋放應用程序。 https://github.com/fastlane/fastlane

xctool是Apple的xcodebuild的替代品,可以更輕鬆地測試iOS和Mac產品。這對於持續集成尤其有用。 https://github.com/facebook/xctool

+0

謝謝。詹金斯怎麼樣? :) – Nitish

+0

你可以參考https://github.com/fastlane/fastlane/blob/master/fastlane/docs/Jenkins.md。很容易與Jenkins集成。 – Jeff

0

還有一個叫做xcpretty的寶石,你可以用它輸出JUnit格式的測試結果,然後用Jenkins JUnit Plugin來顯示結果。

  • 安裝xcpretty
 
    gem install xcpretty 
  • 使用xcpretty以創建JUnit格式的XML文件
 
    xcodebuild test ... | xcpretty --report junit --output [path_to_save]/unit_test_result.xml 
  • 那麼這unit_test_result.xml可以使用詹金斯JUnit插件報告在