![](/img/trans.png)
[英]c# unit test - can't seem to get a relative path to my test file at run time
[英]C#: Run each unit test with different configuration file
我目前正在開發一個可在任何應用程序中使用的插件,並且該插件的配置是通過使用web.config或app.config文件來完成的。
現在,我要對插件進行單元測試。 我想測試各種條件下的不同行為:
例如:
我的問題:
我有一個單元測試項目,我想用另一個應用程序配置文件測試每種方法,這可能嗎?
我嘗試從ExeConfiguration讀取文件,但無法正常工作。
感謝您的反饋。
KR,
這就是我們的工作(與@THG相同),在他的回答中進行了解釋。
public interface IConfiguration
{
string SettingA { get; }
string SettingB { get; }
}
public class Configuration : IConfiguration
{
public string SettingA
{
get
{
return ConfigurationManager.AppSettings["SettingA"];
}
}
public string SettingB
{
get
{
return ConfigurationManager.AppSettings["SettingB"];
}
}
}
然后在你的測試
var config = MockRepository.GenerateStub<IConfiguration>();
config.Stub(x => x.SettingA).Return("Fred");
我的建議是模擬與配置文件的集成,而不是直接使用它。 這種方法提供了更大的靈活性,並且無需擔心多個配置文件。 您可以使用模擬框架,也可以在獲取配置值的代碼之上創建自己的抽象層。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.