问题在于:
1.在Visual Studio解决方案中创建一个TestProject
2.打开.testrunconfig文件,在“部署”菜单项下,选中“启用部署”复选框
3.现在点击“添加目录...”按钮,然后添加一个包含一些文件的文件夹
4.运行测试项目(使用虚拟测试)。
好的,现在去检查TestResults文件夹:您将看到所有文件都被直接复制(到顶层) - 文件夹本身没有被复制(文件在其下面)。这会在测试过程中弄乱我的路径。任何人都可以告诉如何复制文件夹而不仅仅是下面的文件吗?
感谢。
答案 0 :(得分:17)
在使用它的测试类上使用[DeploymentItem]
属性。您可以指定目录:
[TestClass]
[DeploymentItem("blahblah\\myDirectory", "myDirectory")]
public class MyTest
{
}
注意:
[AssemblyInitialize]
的方法的TestClass上指定它。那你只需要提供一次。不确定,你必须尝试。答案 1 :(得分:11)
在记事本中打开.testsettings文件。现在,您应该看到每个要复制的文件夹
<DeploymentItem filename="FolderName\" />
将此更改为
<DeploymentItem filename="FolderName\" outputDirectory="FolderName\" />
答案 2 :(得分:0)
您拥有的另一个选项是在原始文件夹下创建另一个文件夹,然后该文件夹将部署到out目录。例如,您可以使用此结构:
TestFolder /
TestFolder / TestDeployment /
然后在testrunconfig中,您仍然选择TestFolder文件夹,并将TestDeployment文件夹部署到out目录。
答案 3 :(得分:0)
我今天也遇到了这个问题。我通过在包含所需文件夹的项目中添加名为“deployment_files”的文件夹来解决它。然后我将所需的文件夹放入“deployment_files”文件夹中。然后,我在解决方案资源管理器中的“解决方案项”文件夹下打开了LocalTestRun.testrunconfig文件。转到testrunconfig属性窗口中的“部署”面板。在部署中添加了“deployment_files”目录。其中的文件夹已复制到测试结果Out文件夹中。