我有一个带有dll和测试项目的Visual Studio 2010解决方案。该dll有一个资源文件Strings.resx
和一个Strings.en-us.resx
如果我从项目中引用dll,则输出目录normaly包含一个带有en-us
的子目录MyDll.resources.dll
,对于我的测试项目的输出目录,这甚至是正确的。
然而,此测试未通过
[TestMethod]
public void TestMethod1()
{
var manager = String.ResourceManager;
var culture = CultureInfo.GetCultureInfo("en-US");
var resourceSet = manager.GetResourceSet(culture, true, false);
Assert.IsNotNull(resourceSet);
}
这是因为我的程序集是从
加载的file:/// C:/ Users / me / Projects / SampleProject / TestResults / me_myhost 2014-08-06 08_03_33 / Out /
此文件夹不包含子目录en-us
旁注:同样的测试与ncrunch运行良好。
是否有可能告诉微软测试工具在构建过程中包含附属程序集?
答案 0 :(得分:2)
尝试此操作:在解决方案资源管理器中选择所有资源文件,右键单击 - >属性并将复制到输出目录的值更改为:“如果更新则复制”或“始终复制”。