将单元测试分解为另一个项目

时间:2008-12-06 12:02:09

标签: c# unit-testing

我以前在我的主项目中有一个测试文件夹,其中单元测试有这行代码:

Foo foo = new Foo(Environment.CurrentDirectory + @"\XML\FooData.xml" );

我在Foo项目中有一个具有FooData.xml

的XML目录

在我的项目的post build事件中,我有以下行 复制“$(ProjectDir)Foo \ Currencies.xml”“$(TargetDir)\ XML”

我现在已将所有单元测试分解为另一个项目以将它们分开,我现在在运行这些单元测试时遇到以下错误。

无法找到路径'C:\ svncheckout \ Foo.Tests \ bin \ Debug \ XML \ FooData.xml'

的一部分

3 个答案:

答案 0 :(得分:4)

您是否可以在Visual Studio中将其作为“内容”项目告诉它将其复制到目标目录,而不是进行构建后步骤?我通常要么这样做,要么使其成为嵌入式资源并使用流和Assembly.GetManifestResourceStream。

答案 1 :(得分:1)

我认为您需要将Foo.Tests项目的post build事件更新为:

“$(ProjectDir)Foo.Test \ Currencies.xml”“$(TargetDir)\ XML”

答案 2 :(得分:0)

您还可以将xml的完整路径放在测试模块app.config