2010-02-07 39 views
2

我有一個使用應用程序設置來確定特定方法的行爲類庫。.NET單元測試 - 如何測試的applicationSettings

我意識到可以認爲這是一件壞事,但我們知道該網站的行爲將在發佈後一週左右發生變化(沒有真正的確定時間),並且這將是最容易的只需更改配置文件中的設置即可更改站點的行爲。

不管怎麼說,對我的問題。我想能夠測試誰是基於一個applicationSetting的真/假值行爲變化的方法。如何創建一個單元測試來測試未在單元測試的app.config中定義的值?該設置是一個應用程序設置,因此它在Settings.Default實例中是隻讀的。

+0

而不是使用應用程序設置,您的類庫作爲參數傳遞這些設置。更靈活,更少的耦合。 – 2010-02-07 02:07:20

+0

很明顯,這些都爲類庫本身(Properties.Settings) – mkedobbs 2010-02-07 02:14:26

回答

6

如果您爲ApplicationSettings創建repository,則可以在運行時替換測試存儲庫,並在測試期間根據設置執行任何操作。

+1

+1的applicationSettings ......不知道爲什麼,這並沒有發生在我身上。 – mkedobbs 2010-02-07 02:15:29

0

您測試改變了系統的一部分,當值傳遞給它正確的行爲。 App_Start從配置文件中提取值並將它們推送到系統的特定部分,而不是將其拉入配置值本身。這樣你的單元測試可以真正地測試行爲而不用使用配置文件。直接