2016-01-21 156 views
6

我的解決方案中有一個控制檯應用程序和兩個其他類庫項目 - 共計3個項目。解決方案的一個或多個單元測試項目

我想現在添加一個單元測試項目。我的問題是在解決方案中的每個「常規項目」中添加一個「單元測試項目」還是單個測試項目可以測試所有三個?

換句話說,如果我的項目是projA,projB和projC,我是否添加了三個單元測試項目,例如projA.Tests,projB.Tests等等,還是一個可以處理所有三個單元的單個測試項目?

+1

單個單元測試項目,可以處理所有三個。 –

+0

太好了。謝謝! – Sam

回答

4

如果問題只是單個單元測試項目是否可以處理所有三個?答案是是的但比繼續下一步我會說這取決於。就個人而言,我傾向於將所有測試放在一個項目中,每個程序集項目中都有單獨的文件夾(根據需要還有更多的子文件夾)。這使得在VisualStudio中運行整個集合變得很容易。如果您有數千次測試,單個項目可能難以維護。我們通常會將它們分開,因爲我們不想將它們部署到我們的產品中。無論你將它們分成每個庫還是每個解決方案,都有其優點。

最終,您希望測試可以立即供所有開發人員使用,以便開發人員知道何時在需要時找到它們。您還需要一個無障礙的環境,以最小的開銷編寫新的測試。測試也必須快速編譯和執行 - 項目結構可以在所有這些方面發揮作用。

您可能還想要考慮不同級別的測試是可能的,例如測試單元,集成或UI自動化。通過使用測試類別,可以在某些工具中分離這些類型的測試,但是如果它們是單獨的庫,有時候執行或報告更容易。

對於沒有太多項目的小項目,1:1的比例通常是首選方法。

+0

謝謝您的深入解釋! – Sam

相關問題