【发布时间】:2010-06-16 16:10:21
【问题描述】:
我找到了 DeploymentItem
[TestClass(), DeploymentItem(@"TestData\")]
在不同机器上构建和运行测试时,不会将我的测试数据文件复制到同一位置。
测试数据文件复制到我机器上测试项目中的“bin\debug”目录,但在我朋友的机器上它们被复制到“TestResults\name_machine YY-MM-DD HH_MM_SS\Out"。
我机器上的bin\debug目录可以用代码获取:
string appDirectory =
Path.GetDirectoryName(System.Reflection.Assembly.GetExecutingAssembly().Location);
同样的代码将在我朋友的 PC 上返回 TestResults\*name_machine YY-MM-DD HH_MM_SS*\Out。
但这并不是真正的问题。问题是我制作的测试数据文件有一个文件夹结构,这个文件夹结构只有在我的机器上复制到 bin\debug 时才维护,而在我朋友的机器上,只有文件被添加到TestResults\*name_machine YY-MM-DD HH_MM_SS*\Out 目录。这意味着测试将在我的机器上通过而在他的机器上失败!
有没有办法确保 DeploymentItem 总是复制到 bin\debug 文件夹?或者有一种方法可以确保在 DeploymentItem 将文件复制到 TestResults\*name_machine YY-MM-DD HH_MM_SS*\Out 文件夹时保留文件夹结构?
【问题讨论】:
标签: c# unit-testing testing mstest deploymentitem