我在我的解决方案中设置了单元测试,所有工作都在本地工作。但是,当我运行我的TFSBuild时,单元测试失败,因为配置文件的路径不正确,我收到空引用异常。
C:\ Builds \ 1 \ Apps \ Test Solution \ tst \ Deploy_Server $ 2014-08-07 04_42_38 \ Out \ Resources \ TestSettings.config“.---> System.NullReferenceException:对象引用未设置为对象的实例。
我的单元测试项目中有一个配置文件,并且已经确定(这是我今天早上修复过的一个问题)并使用过。上面找不到的配置文件位于解决方案内的单独项目中,不幸的是,包含字符串'Resources'的路径是硬编码的。
我理想的解决方案是配置构建以在名为“Resources”的构建路径下生成子文件夹,然后在构建过程中将此配置文件复制到此子目录下。
在此阶段,由于测试的影响,我不想更改测试项目之外的任何内容。
非常感谢任何想法/建议?
P.S。在VS2010内置的解决方案上运行TFS 2013,并且在我添加单元测试之前构建的解决方案很好。
答案 0 :(得分:0)
如果您只想创建文件夹并在构建中复制配置文件,可以通过添加特定MSBuild tasks或使用pre/post build steps in your projects properties来实现。
另一种选择是配置您需要特定文件进行单元测试。您可以通过在测试中添加以下属性来实现此目的:
[DeploymentItem("source", "targetFolder")]
有关详细信息,请参阅How to: Deploy Files for Tests。