簡體   English   中英

單元測試應該在本地計算機上運行嗎?

[英]Should Unit Tests Be Run On A Local Machine?

最近,我受命用C#為桌面應用程序編寫和運行單元測試。 過去,我主要編寫了自動化的功能/ GUI測試。 它們可以在專用的QA機器上運行,因為這些測試可能導致崩潰,數據丟失,藍屏死機等。是否應該對運行的單元測試進行類似的設置? 在本地計算機上運行單元測試有任何風險嗎?

單元測試應在本地計算機構建服務器上運行。 它們是開發人員的寶貴資源。 DEV應該編寫單元測試。 在簽入之前,他應該運行單元測試以確保他沒有破壞任何東西。 然后,構建服務器將再次運行單元測試,以確保它沒有實際損壞,並確保與其他代碼(如果有)的集成成功。

最好運行單元測試后,構建服務器應再運行集成測試和自動UI測試。 這些過程完成后,就生成了沒有已知缺陷的構建-至少沒有覆蓋測試。 換句話說,綠色的構建意味着軟件集成良好,開發人員可以繼續檢入-或在實際發布軟件之前開始進行手動測試。

軟件測試必殺技是在足夠多的測試自動化后發生的,因此,開發人員和企業僅憑這種自動化測試的成功,就可以放心地發布產品。 實際上,只有少數產品會如此成熟-並需要進行一些手動測試。

單元測試不涉及外部系統或接口。 因此,在本地運行它們沒有任何風險。

單元測試應該隔離開來,這樣它們可以在每台機器上運行而無需任何進一步的設置。 從定義上講,單元測試僅在不涉及外部系統(即數據庫,文件系統等)的情況下,僅對功能單元進行非常細致的測試。

單元測試通常由開發人員在開發過程中完成。 因此,請在您的開發環境上運行它。 可能是您的本地計算機。

如果您的本地計算機是開發計算機,那么我認為沒有風險,因為該計算機不是生產最終用戶計算機。 您還可以考慮使用TFS Lab管理(如果您將Microsoft TFS作為ALM /源代碼控制系統)。 在這種情況下,您可以創建虛擬或物理測試環境,然后在定義的環境中部署和測試應用程序。

不知道非TFS方案中類似測試產品的名稱是什么。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM