2012-08-16 77 views
34

在VS2010中,可以在当前上下文中运行或调试测试使用Visual Studio 2012在当前上下文中运行/调试测试

这使得它很容易点击我刚刚添加或修改并运行测试(按Ctrl - [R牛逼)或调试它(按Ctrl - [R按Ctrl - T)。 (或用我的游戏键盘... G1 ;-)

我可以找到运行特定测试的唯一方法是在测试资源管理器中找到它并从中运行它。这需要将我的注意力从我正在处理的代码中移开。

在Visual Studio 2012中是否有相当于当前上下文

+0

“按Ctrl + R T”查看测试文件时仍然有效。还有一个右键菜单来运行和调试编辑器中的测试。什么不起作用? – 2012-10-08 22:36:43

+0

@ToddKing感谢您的评论。这很有帮助。不过,我仍然会错过提供上下文的功能。对于新建或设计良好的项目而言,这可能并不重要,但对于传统和大型系统来说,这是一个重大问题。 – 2012-11-01 18:21:37

+0

因此,我的解决方案有数千个测试,其中一些测试需要很长时间。我想只在当前的测试类中运行测试,没有可用的东西? – McKay 2012-11-20 18:58:16

回答

27

原来,人们可以在任何的源代码右击:

  • 特定测试(public void MyTest()
  • 含有类测试(public class MyTestClass
  • 包含测试的命名空间(namespace My.Project.Test

并获取上下文菜单以在每个给定范围内运行或调试测试。 (注意:上下文菜单中的文本不会改变)

这已被证明是对我有选择性地运行测试最有用的方法。

+2

这是2010年的工作,但在2012年不再适用于我 – McKay 2012-11-21 01:04:03

+0

@McKay:适用于我...我在发布前重新确认。 – 2012-11-21 17:37:35

+0

如果你在一个文件中有两个类,该怎么办?或者在一个文件中有两个命名空间?或者在另一个文件中的另一个类中继承的方法。我的经验表明,在2012年,测试和文件的背景下,没有别的。命名空间和类不起作用。 – McKay 2012-11-21 22:30:27

3

没有。它全部运行,或者在资源管理器中找到它。就个人而言,我倾向于将构建的所有测试设置为true,然后进行构建。它至少会运行最新的测试(包括修改测试),然后测试失败,然后是所有其他测试。所以你通常不必注意测试经理很长时间。您还可以获得额外的好处,确保您不仅通过了当前的测试,而且还没有破坏其他任何内容。当你正确地做到这一点时,这非常方便。

5

我发现做到这一点的方法是寻找

FullName:"<your namespace>" 
在测试资源管理器

,然后选择所有和运行选择的测试。

2

如果选择的测试是私有方法,测试套件将忽略它并运行该类中的所有测试。为了在上下文中运行测试,必须将其声明为公开。

相关问题