MsTest:如何设置相对于$(ProjectDir)或$(OutDir)的部署项

Tob*_*ner 5 unit-testing mstest deploymentitem

我想在我的测试中添加一个部署项.据我所知,到目前为止,路径与解决方案有关.我希望路径是相对于项目的.否则,项目不能用于多种解决方案.如何将部署项配置为相对于项目因变量?

我希望有类似的东西:[DeploymentItem(@"$(ProjectDir)..\..\bin\$(Configuration)")]但是我没有找到任何文档,它似乎不起作用.


我刚做了一个小测试.只是简单的向导代码和一个部署项:

[TestMethod]
[DeploymentItem("stdafx.cpp")]
void TestMethod1()
{
    Assert::Fail();
};
Run Code Online (Sandbox Code Playgroud)

并且trx文件显示以下行:

警告:测试运行部署问题:无法获取测试'TestProject1.UnitTest1.TestMethod1'指定的部署项'stdafx.cpp'的文件:System.IO.FileNotFoundException:找不到文件'd:\ Development\Projects\deploymentItemTest\stdafx.cpp".System.IO.FileNotFoundException:找不到文件'd:\ Development\Projects\deploymentItemTest\stdafx.cpp'.文件名:'d:\ Development\Projects\deploymentItemTest\stdafx.cpp'

这意味着相对于解决方案目录(位于...\depoymentItemTest)而不是项目目录(位于...\depolymentItemTest\TestProject1中)搜索"stdafx.cpp"

Tho*_*yde 1

让测试设置将文件复制到Environment.CurrentDirectory.