【发布时间】:2011-01-28 05:08:56
【问题描述】:
我在 Visual Studio 2010 解决方案中有一个测试项目,它测试另一个作为 FTP 实用程序的项目。测试项目需要在这里和那里 FTP 文件,所以我使用测试文件传递给实用程序方法并验证它是否已上传/存档/等。在我的测试项目中,我在它的根目录下有一个名为 TestFiles 的文件夹,其中有一个 .txt 文件。每当有人从源代码管理中签出解决方案并运行单元测试时,我都希望将它放在该文件夹中的文件被抓取并用于 FTP 单元测试的地方。
我尝试过使用它,以及构建后事件命令行的变体,但没有运气:
copy $(ProjectDir)TestFiles\Test.txt $(ProjectDir)Debug\bin\Test.txt
我真正想做的就是确保我可以为任何本地测试文件使用相对路径,这样无论我的团队中的某个人将项目签出到哪里(或者如果团队Foundation Server 运行自动构建并为我的项目触发单元测试)。
我目前正尝试像这样在我的单元测试中访问该文件,所以我只是从调试区域中获取它:
ftp.uploadThisFileSomewhere(
AppDomain.CurrentDomain.BaseDirectory + "\\TestFiles\\Test.txt");
那么,这是获取测试文件的正确方法吗?我不认为它是,但我似乎无法找到一个好的最佳实践文档。如果足够好,无论项目在哪里构建/运行,您如何复制/保证相对位置?
【问题讨论】:
标签: c# visual-studio-2010 c#-4.0 build copy