如何让Visual Studio将单元测试放在我想要的位置?

时间:2010-03-07 03:55:19

标签: visual-studio unit-testing .net-4.0 resharper mstest

在VSTS 2008和VS 2010 RC1中,当我创建单元测试(mstest)时,我不会被问到我希望项目放在哪里。它总是会出现在解决方案级别。我想将测试项目放在正在测试的类的文件夹中。

我已经尝试卸载单元测试项目并将其添加到类库中,但这会破坏与类的耦合。

我正在使用带有ReSharper 5.0的Visual Studio 2010 Ultimate RC1和带RS 4.5的Visual Stuido 2008。

TIA, 吉姆

修正:我对放置单元测试一点也不清楚。我有一个解决方案与几个解决方案文件夹。其中一个是常见的库。我想为库中的某些类添加单元测试。 VS会将TestProject置于基本解决方案级别。我更喜欢

mySolution
mySolution \ SolutionFolder
mySolution \ SolutionFolder \ ClassLibrary
mySolution \ SolutionFolder \ ClassLibrary \的Class1.cs
mySolution \ SolutionFolder \ ClassLibrary \ Class2.cs
mySolution \ SolutionFolder \ UnitTestForClass1
mySolution \ SolutionFolder \ UnitTestFOrClass2

相反,VS会这样做:

mySolution
mySolution \ SolutionFolder
mySolution \ SolutionFolder \ ClassLibrary
mySolution \ SolutionFolder \ ClassLibrary \的Class1.cs
mySolution \ SolutionFolder \ ClassLibrary \ Class2.cs
mySolution \ UnitTestForClass1
mySolution \ UnitTestFOrClass2

我希望这更清楚。谢谢。 我为我发布的所有错误编辑道歉。

2 个答案:

答案 0 :(得分:2)

通常的做法是在最高级别分离byb源/源和源/测试。

换句话说,假设您有一个包含3个项目的“解决方案”,每个项目都构建一个不同的程序集。你可能有这样的源代码树:

soln\sourcesrc\proj1
soln\sourcesrc\proj2
soln\sourcesrc\proj3

测试代码通常是这样的:

soln\testsrc\proj1
soln\testsrc\proj2
soln\testsrc\proj3

这与Visual Studio或mstest无关。这就是我看到它完成的方式,几乎无处不在。

答案 1 :(得分:1)

项目不会使用Visual Studio进入其他项目。你见过的其他项目类型是否属于另一个项目?