2012-05-24 105 views
2

我正在維護我的組織的源代碼管理,並且我希望在每次簽入到達中央存儲區之前運行一些自動化測試。這意味着當用戶提交更改時,我將構建所有代碼並啓動測試套件。在代碼簽入之前運行一些測試自動化

我需要爲此設置什麼 - 假設我有perforce作爲源代碼控制?

這應該是一個非常普遍的問題,但我可能沒有正確的詞彙表。

+0

如上所述,您的問題太廣泛,甚至根本不是問題。 –

+0

@malenkiy_scot對不起,我忘了添加問題。現在編輯。 –

回答

4

我假設你從你的標籤中使用Perforce。有一對夫婦的方式,你可以這樣做:

  1. 使用branches - 有開發商簽入一個「測試」分支,讓詹金斯監控分支更改建立你的代碼並運行測試。然後,您可以將測試代碼整合到單獨的「主」分支中,供其他人使用。
  2. 如果您有最新版本的Perforce,則可以使用shelving功能。讓開發人員創建擱置的更改列表,並讓Jenkins取消修改以構建和運行測試。如果測試通過,更改列表可以提交到中央倉庫。

我們在我的工作中使用選項2,所以如果需要我可以給你更多的細節 - 只需在這裏發表評論。

+0

謝謝gareth。我們實際上使用perforce作爲公司的中央存儲庫。但是我們的團隊希望在我們簽入前執行自動化運行。我沒有中央服務器的控制權;但我會控制這個中間設置。我正在考慮git,因爲我讀過git中的分支機構比較便宜。我使用jenkins來監視分支,但是如果分支是動態創建的 - 作爲簽入提交的結果 - 我可以在這個分支的jenkins中動態創建一個構建版本嗎?任何其他建議?謝謝。 –

+3

聽起來像你必須做一些自定義工具,無論你做什麼 - Git可能是一個不錯的選擇,但你必須弄清楚如何從Git到Perforce的變化,一旦他們幸運。你也可以看看新的P4 Sandbox功能,它複製了Perforce中很多Git的功能(我沒有使用過,所以不能提供很多建議) –

相關問題