2016-03-28 59 views
0

我目前正在使用一個由幾個內部項目使用的home spun unit測試幫助程序包。直到最近,這個解決方案對我們來說一直運作良好,並且幫助我們跟隨DRY負責人的常見測試幫助方法。不幸的是,這個項目目前與nUniut綁定在一起,我們剛剛繼承了一些可以從這個幫手中受益的xUnit測試項目。這成爲一個問題,因爲每個測試框架似乎都管理斷言和監視不同拋出的異常以指示測試失敗。如何在單元測試框架不可知的方式下進行單元測試斷言

我希望它只是一個基本的異常類的繼承問題,大多數單元測試框架只是將它作爲一個失敗(或傳遞)的斷言來適當地捕獲和處理。但是,似乎並非如此。

有沒有適當的方法來斷言/拋出斷言異常沒有直接的單元測試框架依賴關係,可能會被適當的測試運行器消耗?還是必須爲每個單元測試框架創建一個自定義適配器,以便我的幫助器類不受測試項目單元測試框架的這種直接依賴關係的影響?

+0

https://msdn.microsoft.com/en-us/library/system.diagnostics.debug.assert%28v=vs.110%29.aspx –

+0

除非我誤解它的用法,各種Debug.Assert方法只是適用於調試環境,與單元測試斷言不同。 – rheone

+0

任何單元測試斷言都可以轉換爲布爾值 –

回答

0

您將不得不創建一個接口並在每個框架的獨立適配器中實現它。由此產生的功能集將成爲您支持的所有框架中最低的共同特徵。

我想這隻會讓真正新手的人滿意。這意味着您無法利用NUnit和xUnit中不兼容的高級生產力增強功能。

你必須問自己,一致性是否真的有價值。

相關問題