为WebRole云服务项目设置单元测试?

问题描述:

我正在尝试为我的WebRole项目设置单元测试。我创建了一个单独的项目“MyWebRole.Tests”。我遇到的问题是,当我实例他们在为WebRole云服务项目设置单元测试?

RoleEnvironment.GetConfigurationSettingValue("GetValue"); 

我创建没有任何RoleEnvironment为它设置的单元测试项目叫我的控制器方法,所以测试出错误。对此进行更多研究似乎无法在多个角色之间共享配置设置。

我也不想为UnitTest创建单独的WebRole项目,因为这意味着它会被部署。

我怎么能写单元测试我Webrole,所以我有机会获得

RoleEnvironment.GetConfigurationSettingValue("GetValue"); 

,并在同一时间单元测试代码没有得到部署?

我会解决这个应用外部配置存储云模式。你可以在这里阅读更多关于它:

https://docs.microsoft.com/en-us/azure/architecture/patterns/external-configuration-store

如果你想保持与当前的解决方案,您需要为RoleEnvironment的接口,并创建一个模拟。我发现这一个:

https://searchcode.com/file/28014050/ServiceRuntime/Contracts/IRoleEnvironment.cs

你可以试试看。