2009-10-24 55 views
2

我剛開始使用Pex爲我的項目生成參數化單元測試。然而,當我讓Pex運行它的探索時,我的代碼崩潰了,因爲它無法從web.config中讀取(ConfigurationSettings.AppSettings沒有更精確的元素)。探索過程中的工作目錄是:「C:\ Program Files(x86)\ Microsoft Visual Studio 9.0 \ Common7 \ IDE」。我認爲這是根本原因。運行Pex探索時從web.config讀取

我知道處理這個問題的方法是創建與我需要的值相對應的模擬對象。然而,這會迫使我創建大量的模擬代碼,並不會提供任何有形的價值恕我直言,因爲我沒有問題捆綁web.config與測試項目。

Pex探索執行時,如何從web.config(或app.config)啓用讀取?

回答

3

你已經回答了你自己的問題我害怕 - 你不會直接從你的代碼訪問你的數據庫,那麼爲什麼你的配置文件呢?只需在你的配置文件設置中添加一個薄包裝,並將其存儲在測試中。你不必一次就做完所有事情,先從待測試的代碼開始,然後將包含的直接引用一點一點地移動到包裝中。這樣做的實際好處是它使測試變得簡單。

另外,如果您的代碼在每次運行之間被完全拆除(取決於您的代碼和測試是否實際是這種情況),那麼您每次都會碰到文件系統,嚴重影響業績。