Visual Studio:如何在一个项目中运行所有测试?

38

在我的 Visual Studio 解决方案中,我有大约十几个项目,其中有几个包含单元测试方法(使用 TestMethod 属性标记),这些测试方法分布在这些项目中的数百个测试方法中。

在 Visual Studio 中,我想运行解决方案中一个特定项目中的所有(100+)测试,而不运行解决方案中其他项目中的测试。

Ctrl+R, A 并不能满足我的要求,因为它会运行整个解决方案中的所有测试。在“测试”菜单、“测试资源管理器”窗口或解决方案资源管理器窗口中右键单击项目时,我也没有看到运行特定项目测试的选项。

我正在使用 Visual Studio 2013。

如何让 Visual Studio 运行特定项目中的所有测试方法?

1个回答

64

在浏览了UI之后,我找到了一个比较好的方法:

  1. 打开测试资源管理器窗口。(测试菜单>窗口>测试资源管理器)
  2. 点击搜索框左侧的小箭头。
  3. 从出现的上下文菜单中选择项目。测试资源管理器窗口内容会按项目分组,形成两级层次结构。

Test Explorer filter menu

  1. 右键单击所需项目。
  2. 从出现的上下文菜单中选择运行选定的测试。

Test Explorer project context menu

尽管如此,我仍然希望有一种合理的方式只使用键盘来完成这个任务!


只用键盘吗?那我会选择在命令行中使用mstest。只需运行您感兴趣的测试程序集即可! :-) 您不想运行所有测试的原因是什么?它们很慢吗...?通常,我每个解决方案只有一个测试项目,但我也力求拥有小型解决方案,这样就不成问题了... - Jocke
@red888 很好的问题!也许可以作为一个新问题来提问(假设之前没有人问过)? - Jon Schneider
1
这不需要先运行测试发现吗?如果我这样做,它就不会注意到新编写的测试... https://i.imgur.com/94d4lKm.png - binki
2
很高兴知道。不过,在项目或文件夹上添加右键选项,以运行测试,会使事情更加直观。 - Carra
我使用键盘快捷键来加载和卸载项目。我将所有测试项目放在一个解决方案文件夹中,这样我就可以打开或关闭它们。命令是Project.UnloadProject和Project.ReloadProject。我不记得它们是否有默认设置。 - Programmer Paul
有没有办法使用 Visual Studio 2019 完成这个任务? - Aaron Franke

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接