【问题标题】:How do I get Visual Studio to place the unit tests where I want them?如何让 Visual Studio 将单元测试放在我想要的位置?
【发布时间】:2011-01-24 14:31:45
【问题描述】:

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

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

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

TIA, 吉姆

修正:我对放置单元测试一无所知。我有一个包含多个解决方案文件夹的解决方案。其中之一是公共图书馆。我想为库中的某些类添加单元测试。 VS 会将 TestProject 置于基础解决方案级别。我更喜欢

我的解决方案
我的解决方案\解决方案文件夹
mySolution\SolutionFolder\ClassLibrary
mySolution\SolutionFolder\ClassLibrary\Class1.cs
mySolution\SolutionFolder\ClassLibrary\Class2.cs
mySolution\SolutionFolder\UnitTestForClass1
mySolution\SolutionFolder\UnitTestFOrClass2

相反,VS 会这样做:

我的解决方案
我的解决方案\解决方案文件夹
mySolution\SolutionFolder\ClassLibrary
mySolution\SolutionFolder\ClassLibrary\Class1.cs
mySolution\SolutionFolder\ClassLibrary\Class2.cs
我的解决方案\UnitTestForClass1
我的解决方案\UnitTestFOrClass2

我希望这更清楚。谢谢你。 对于我发布的所有错误编辑,我深表歉意。

【问题讨论】:

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


    【解决方案1】:

    项目不会进入 Visual Studio 的其他项目中。您是否见过其他项目类型包含在另一个项目中?

    【讨论】:

      【解决方案2】:

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

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

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

      测试代码通常是这样的:

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

      这独立于 Visual Studio 或 mstest。这就是我所看到的,几乎无处不在。

      【讨论】:

      • 谢谢。在 Delphi 中,DUnit 会在包含类的文件夹下创建 ut。我需要习惯这个世界,嗯。 :)
      猜你喜欢
      • 2021-04-26
      • 1970-01-01
      • 2023-04-09
      • 1970-01-01
      • 2010-09-05
      • 1970-01-01
      • 2010-09-18
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多