2008-09-22 39 views

回答

29

是的,沒有理由不把它們放在源代碼控制中。如果測試發生變化會怎樣?如果接口發生變化,那麼測試需要改變呢?

+1

理想情況下,您更改測試以演示您的更改(並失敗),然後更改您的代碼以通過測試。一旦測試再次通過,請將其全部重新檢入源代碼控制。這是測試驅動的開發。 – 2008-09-22 15:22:43

3

絕對。測試類必須與代碼保持同步。這意味着檢查它並在持續集成下運行測試。

0

是的,他們應該。查看最新版本的人應該能夠在他們的機器上對代碼進行單元測試。這將有助於識別缺失的依賴關係,還可以向他們提供關於代碼如何工作的非官方文檔。

0

是的。

測試代碼是一個代碼。它應該被維護,重構和版本化。它是您系統源的一部分。

4

是的,所有將生產代碼放入源代碼管理的原因仍然適用於您編寫的任何單元測試。

這是典型的誰,在哪裏,爲什麼問題:

  • 誰改變了代碼?
  • 他們什麼時候改變它?
  • 他們改變了什麼?

這些問題與測試代碼一樣與生產代碼相關。您絕對應該將您的單元測試代碼放入存儲庫。

0

當然,他們應該被視爲您的代碼庫的一等公民。他們需要所有的愛和關心,即任何代碼的維護。

0

是的,他們應該。您應該檢查測試並在您更改代碼時運行測試。如果你把它們放在別的地方,那麼運行它們會有更多的麻煩。

2

絕對!測試類是源代碼,應該像其他任何源代碼一樣進行管理。您需要修改它們並跟蹤版本,並且您想知道維護歷史記錄。

除非是大規模的,否則您還應該將測試數據保存在源代碼管理下。

0

是的。除了這裏提到的所有其他原因外,還有一個事實,即隨着功能的變化,你的測試套件將會發生變化,並且應該很容易爲任何給定的發行版,分支等獲得正確的測試套件,並且不僅僅是測試在版本控制中,但與代碼相同的存儲庫是實現該目標的方式。

0

絕對如此。您可能會發現,隨着代碼更改,您的測試可能也需要更改,因此您可能需要記錄這些更改,特別是如果測試或代碼突然停止工作。 ;-)

此外,單元測試用例應儘可能地保持與他們正在測試的實際代碼(相同文件的底部似乎是標準)。這與維護方便一樣方便。

要了解關於什麼是良好的單元測試的更多閱讀,請查看this stackoverflow post

1

單元測試應該綁定到存儲庫中的代碼庫。

除了如果您必須爲以前的版本生成維護版本之外,沒有其他原因,您可以保證,通過單元測試的指標,您的代碼不會比以前更糟糕(並且希望現在更好)。

0

是的,因爲上述所有原因,如果您正在使用持續集成服務器「監視」您的源代碼管理,您可以讓它在每次提交時運行最新的單元測試。

這意味着單元測試失敗以及代碼無法編譯會導致破壞的構建。

1

的確如此。怎麼會有人不這樣想?

如果您使用代碼分支,您應該嘗試使您的測試代碼自然適合主代碼行,因此當您分支時,測試的正確版本也會分支。

相關問題