更改生成的单元测试文件的目录

时间:2012-04-26 10:33:48

标签: c# visual-studio unit-testing visual-studio-2008 mstest

在visual studio 2008 Professional中,当我为方法创建单元测试时(使用native vs studio框架和向导),生成的测试文件存根将保存在测试项目的根目录中。

当我稍后将测试文件移动到子目录时,我无法使用该向导为同一类的其他方法创建更多测试存根(它将在根中创建一个新的空文件,然后静默失败)< / p>

如何更改此设置,以便测试项目使用与主项目相同的文件夹结构;所以,如果一个班级是例如在project-root\model\xyz.cs中,相应的测试类是在testproject-root\model\xyzTest.cs

中自动生成的

编辑:

添加片刻,这似乎是visual studio的一个未解决的错误。除了下面的答案中描述的解决方法之外,另一种可能性是在移动相应的测试类文件之后简单地重命名自动生成的测试类。然后Visual Studio至少不会无声地失败,但在生成另一个测试方法时会在根文件夹中重新创建旧的测试类文件,然后可以将该测试方法复制粘贴到正确的文件中

2 个答案:

答案 0 :(得分:1)

我刚刚确认了你的问题,当我为移动的文件添加更多测试时,我只得到了生成文件的前两行。

我猜这个向导只是不知道如何在子文件夹中查找要添加它的文件,但在尝试生成同名的第二个类时会出错。 (我猜你是否重命名任何测试文件但是将它们留在root中它也会有这个问题,但我没有测试这个想法)

因此,如果您想继续使用该向导,我认为它无论如何都没有。您应该能够将其移动到根目录,使用向导,然后将其向右移动。这是我能想到的最佳选择。

我认为VS2010的测试能力大大提高了,我还没有用过,但也许修复了那个版本......

This answer使用第三方代码模板提供解决方案。

答案 1 :(得分:0)

移动或重命名文件夹时,您唯一需要做的就是从主项目中正确包含dll,exe或manifest。

听起来你不仅希望它在一个单独的文件夹中,而且还在一个单独的项目中?

按顺序排列文件夹后,右键单击测试项目的参考,然后单击“添加参考”。单击“浏览选项卡”,然后找到您的主项目,进入其bin / Debug文件夹并选择相应的dll或exe。

这当然假设您可以先编译主项目。要仅编译源项目,请在解决方案资源管理器中右键单击它,单击“构建”或“调试/启动新实例”。

希望这有用。我希望:p。