如何将本地库复制到Visual Studio 2010单元测试暂存目录?

5
我的项目依赖于一些本地库(DLL),我通常通过MSBuild目标将它们复制到输出目录中。当我运行应用程序时没有问题,但我正在Visual Studio中编写一些单元测试,每次运行单元测试时,程序集和可执行文件都会从输出目录复制到暂存文件夹:C:\path\to\MyProject\TestResults\myWorkStationName 2012-03-20 13_53_56\Out 不幸的是,本地DLL未被复制到暂存目录中,并且暂存目录在每次测试运行时都会生成。是否有MSBuild目标允许我将内容复制到暂存目录中?
P.S.如果“staging directory”不是正确的术语,请原谅我的无知 :)。
2个回答

4

解决方案级部署

从VS菜单中选择:Test>Edit Test Settings>(settings file)>Deployment>勾选启用部署并添加目录或文件。

注意:此功能有一个限制:在启用现有测试的部署之前,需要重新启动Visual Studio。

enable deployment

单个方法部署

使用[DeploymentItem]属性:

[TestMethod()]
[DeploymentItem("testFile1.txt")]
public void ConstructorTest()
{
    // Create the file to deploy
    Car.CarInfo();
    string file = "testFile1.txt";
    // Check if the created file exists in the deployment directory
    Assert.IsTrue(File.Exists(file), "deployment failed: " + file +
        " did not get deployed");
}

1

针对各种单元测试设置,包括“暂存目录”和添加其他部署文件,请转到

测试->编辑测试设置->本地

对于您的具体问题,在该设置窗口中,转到“部署”,您应该能够添加其他要部署到单元测试运行目录的文件。

我相信您还可以使用属性来直接在代码中定义部署项:

http://msdn.microsoft.com/en-us/library/ms182475.aspx


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接