在我的工作場所,我們有一個包含大約50個項目和大約2000個單元測試的c#.net解決方案。在更改代碼之後,我們需要在將更改推送到構建服務器之前運行解決方案中的所有測試。運行所有測試可能需要大約10-15分鐘。我在想 - 嘿,也許可能會有一些過程分析我所做的所有代碼更改,然後決定只運行相關的測試方法。如果可以進行這樣的分析,那麼與其運行2000次測試,計算機將只運行15次或100次測試,那麼我們正在討論提高生產力和減少頭痛的方法。 任何人有任何想法如何實現這一點,或者如果這樣的軟件可用?代碼依賴單元測試
Q
代碼依賴單元測試
6
A
回答
2
我們C# Test Coverage Tool可以做到這一點。
它逐漸儀器只是因爲 最後的測試覆蓋率運行更改過的文件。
它可用於跟蹤每個單元測試的測試覆蓋率,和涉及到哪些文件。當一個文件改變時,它將它與以前的版本進行比較;如果以前某些單元測試涉及的方法 發生變化,則會標識這些單元測試。 您必須組織該過程以將測試運行與覆蓋率數據相關聯,並重新運行已識別的單元測試,但這只是一小段腳本。原因是爲了使測試覆蓋率工具能夠使用任意測試框架進行操作。
您可以在構建服務器上這樣做以節省時間。更重要的是,你可以爲每個開發者提供這個,以便他在檢查變化之前只運行驗證他所修改代碼所需的測試。
5
這真的很難說什麼在多項目環境取決於什麼。理想的情況是:
- 單元測試將是真實的單元測試,其中有2000應該像20秒跑完。
- 您的長時間運行測試,將成立一個持續構建你的構建服務器上,所以你仍然會得到相當快通知你搞砸的事情,如果你錯過了什麼,但你可以親自負擔只是一個小更有選擇性的只運行您認爲在提交之前可能會影響代碼更改的測試。
2
0
在我們的環境中,我們使用NCrunch http://www.ncrunch.net/
它建立的項目,並運行在使用多線程的背景單元測試。 它以愉快的方式通知您單元測試失敗。
NCrunch幾乎可以滿足您的需求。看一看。
相關問題
- 1. 我如何單元測試代碼依賴於一個工廠
- 2. 如何單元測試一段依賴於Asio的代碼?
- 3. 單元測試高度相互依賴的代碼
- 4. Angular2依賴注入和單元測試
- 5. 單元測試:硬依賴MessageBox.Show()
- 6. 單元測試角JS使用依賴
- 7. 單元測試 - 依賴注入zf2
- 8. 單元測試中的依賴關係
- 9. 單元測試中的依賴注入
- 10. 單元測試依賴於UserManager和RoleManager
- 11. C++和依賴注入單元測試
- 12. Laravel單元測試依賴注入
- 13. 依賴MouseEventArgs的單元測試函數?
- 14. Qt單元測試依賴問題
- 15. 單元測試依賴項屬性
- 16. 單元測試C#MOQ依賴注入
- 17. 單元測試和依賴注入深度嵌套依賴
- 18. 單元測試測試依賴性交互?
- 19. 單元測試ASP.NET代碼
- 20. 單元測試代碼。ContinueWith(
- 21. 如何單元測試依賴於HttpWebRequest和HttpWebResponse的現有代碼?
- 22. 使用依賴注入系統你如何單元測試你的代碼
- 23. 具有大量相互依賴條件的單元測試代碼
- 24. 依賴打破技術使用依賴關係Inj進行單元測試
- 25. 單元測試中的單步測試和調試代碼
- 26. 單元測試 - 不可測試代碼轉換爲可測試代碼
- 27. 當單元測試依賴於其他單元時,單元測試如何進行模塊化?
- 28. 如何測試依賴於SoftReference的代碼?
- 29. 如何測試依賴於顯示模板的代碼?
- 30. 如何測試有很多依賴關係的代碼
+1用於從集成測試中分離單元測試。見http://stackoverflow.com/questions/61400/what-makes-a-good-unit-test – TrueWill