我有一個靜態類,它表示我想使用Visual Studio 2008的內置單元測試框架進行單元測試的連接池。靜態類有一些常量,就像允許的最大連接數一樣。我想爲我的單元測試減少這個值,所以我不必爲了達到測試條件而打開很多連接(特別是達到最大允許連接時的代碼)。有沒有一種方法可以在單元測試中編輯這個常量?這對我來說似乎不可能。在C#中爲單元測試調整靜態類中的常量
我的一個解決方案是編寫另一種訪問要測試代碼的方法,一種將'最大允許連接'作爲參數。這看起來有點骯髒,因爲它修改了我想測試的代碼,即使只是稍微;然而,有沒有更好的選擇?下面是一些我的代碼,以供參考:
internal static class ConnectionPool<T> where T : Connection, new()
{
private const int MAX_OBJECTS = 25;
private static int _totalConnections;
internal static T getConnection(bool testMode)
{
if (_totalConnections >= MAX_OBJECTS)
{
// Here's the code I want to test
}
}
}
「你是不是避免測試」真實「的條件,因爲它太慢或太不切實際?」是。關於將單元測試分爲夜間v。任何時候的好建議。 – 2009-07-27 16:51:36