不同的部署项目
问题描述:
我有不同的部署项目不同的测试,例如:不同的部署项目
[TestMethod]
[DeploymentItem("item1.xml")]
public void Test1(){...}
[TestMethod]
[DeploymentItem("item2.xml")]
public void Test2(){...}
如果我进行的测试,一个接一个它的工作原理,但是,如果我运行它们togheter所有部署项目被复制,因此Test2将在输出文件夹中运行item1.xml和item2.xml。
我想要做的只是运行每个测试与输出文件夹中的指定部署项目。
是否有任何方法可以在每次测试后清理部署项目?
我的解决方法是将项目部署到每个测试的输出子文件夹,但我不喜欢它。
答
如果定义在您的测试类下面,你可以实现你在找什么:
[TestInitialize()]
public void Setup()
{
//Delete all files from the deployment directory
}
我倾向于不使用文件作为“单位”测试的一部分,所以我对此我并不乐观,但是如果你真的希望将文件分离到那个目录中,而不是在子目录中,可能值得考虑。
在测试运行之前,DeploymentItem属性中指定的所有文件都被复制到输出文件夹。做你所说的只会删除所有这些文件。我自己遇到了这个问题,我仍在寻找一种方法来获得@Pomber所要求的 – amaters