ReSharper的单元测试运行器有快捷键吗?

71

为了明显的生产力原因,我努力学习和使用各种Re#命令的键盘快捷方式。

然而,似乎单元测试运行器没有任何相关的快捷键。我希望能够选择特定的测试并能够运行或调试它们,而不每次都需要使用鼠标。难道只能使用鼠标吗?

12个回答

72

ReSharper会向Visual Studio的键盘设置对话框添加项目。

前往:

工具 -> 选项, 环境 -> 键盘

在搜索栏中,输入“resharper”,查看您可以使用键盘控制的丰富选项。

具体来说,有一个用于启动单元测试资源管理器窗口的选项,以及一些名为:

  • ReSharper.ReSharper_UnitTest_RunSolution
  • ReSharper.ReSharper_UnitTest_RunContext

这些可能是您需要的内容。


1
另外一件事,我不使用这个... 我将CTRL+T映射到TestDriven.NET。 - Ben Scheirman
现在Ctrl+T在R#中映射为“转到类型”,所以我选择使用Alt+T作为替代方案。 - Even Mien
即使 - 我认为这是当您选择保留VS键绑定时发生的情况,但我不这样做。实际上,我认识的大多数R#用户都选择R#键绑定,因为它们似乎更自然(至少对我来说是这样)。 - Ben Scheirman
1
不幸的是,这会激活单元测试会话窗口,所以当我想继续编码时,我必须切换回代码窗口... :( - Gaspar Nagy
便捷的快捷方式。这个应该有一个默认设置。 - Chris Ballance
截至R# 2023,这些似乎被称为ReSharper.ReSharper_UnitTestRunSolutionReSharper.ReSharper_UnitTestRunFromContext - Lennart

25

如果您的光标在测试方法中,可以尝试使用快捷键 ALTRUR 运行 R# 测试。

如果光标在测试类中但不在方法中,则 R# 会运行该类中的所有测试。


2
如果你做了最后一个D,那就很好了,你可以进行调试! - Mateusz

18

Resharper > 7 / Visual Studio 2012

您可以在Visual Studio 2012中定义的快捷方式中找到它们,具体位置为:
[工具] > [选项] > [环境] > [键盘]

我通常使用以下快捷键:

+---------------------------------+----------------+
| 描述                            | 快捷键          |
+---------------------------------+----------------+
| 在Debug模式下运行测试(编辑器) | Ctrl+U, Ctrl+D |
| 运行测试(编辑器)             | Ctrl+U, Ctrl+R |
| 运行当前会话中的测试            | Ctrl+U, Ctrl+Y |
| 运行整个解决方案的测试          | Ctrl+U, Ctrl+L |
+---------------------------------+----------------+
  • Resharper.Resharper_Resharper_UnitTest_DebugContext
  • Resharper.Resharper_Resharper_UnitTest_RunContext
  • Resharper.Resharper_UnitTest_RunCurrentSession
  • Resharper.Resharper_UnitTest_RunSolution

1
这是一个我能理解的答案,几乎没有句子,简洁地呈现在一个表格中。 - mkb

18

关于运行解决方案中所有测试的命令是Alt-RUN,即ALT+R用于ReSharper菜单,U用于单元测试,N用于运行解决方案中的所有测试。

如果您使用R#快捷键,那么组合键Ctrl-U、L将始终完成此工作。

注意:我从stackoverflow用户ilya-ryzhenkov相关问题中找到了这个答案。


这很容易记忆 :) - flq

7

对于 Resharper 4.5 OOTB:

单元测试资源管理器:按 Ctrl+Alt+U
单元测试会话:按 Ctrl+Alt+T
关闭活动窗口:按 Shift+Esc

上周我刚刚注意到我的键盘右侧在 AltCtrl 之间有一个右键按钮,所以不需要鼠标来单击特定的测试。太好了!

通过Ben Scheirman的方法进行自定义键映射:
ReSharper.ReSharper_UnitTest_ContextDebug :按 Alt+TAlt+D
ReSharper.ReSharper_UnitTest_ContextProfile :按 Alt+TAlt+P
ReSharper.ReSharper_UnitTest_ContextRun :按 Alt+TAlt+TAlt+TAlt+R
ReSharper.ReSharper_UnitTest_RunSolution :按 Alt+TAlt+S
ReSharper.ReSharper_UnitTest_RunSolution :按 Alt+TAlt+A


4
我发现记忆这些快捷键最简单的方法是从菜单中查看:
Resharper > Unit Tests

所有的快捷键都展示在每个菜单项旁边。

2
自从我最初提出这个问题以来,这就是我一直在使用的:
打开“单元测试资源管理器”和“单元测试会话”窗口
- 使用ReSharper 4.5+中提供的键绑定
在“单元测试会话”中选择单个测试
- 要选择一个测试,请使用箭头键进行导航
在“单元测试会话”中选择多个测试
- 要选择多个连续测试,请在使用箭头键进行导航时按住Shift键 - 要选择多个不连续的测试,请在使用箭头键进行导航时按住Ctrl键,并切换Spacebar以选择/取消选择测试
在“单元测试会话”中运行和执行测试
  • 按下上下文菜单按钮(大多数以Windows为中心的键盘上位于AltCtrl按钮之间)

或者

  • 作为替代,按下Shift + F10

  • 使用箭头键在上下文窗口内导航,并在任何选择上按Enter

或者

  • 对于Run Selected Tests,按下R+Enter

  • 对于Debug Selected Tests,按下D

选择调用堆栈错误行超链接

如果一个测试失败并且调用栈显示在“Session”窗口中,按下 Tab 键从测试部分导航到下面的错误链接。在定位到特定的错误行后,按下 Enter 键转到运行时错误所在的代码行。按下 Shift + Tab 键多次,直到从调用栈(下部)部分返回到单元测试(上部)部分。

2
您可能想要查看 this 快捷键速查表。
顺便说一下,即使没有默认快捷键,您也可以通过转到菜单“工具”->“选项”,然后进入子类别“常规”->“键盘”,并在搜索栏中键入 ReSharper 来绑定一个。

好的,Ben Scheirman准确指出了你要寻找的选项。 - dguaraglia
这是版本4.0的快捷键备忘单:http://www.jetbrains.com/resharper/docs/ReSharper40DefaultKeymap.pdf - Josh Kodroff

1

1

RunCurrentSession 命令

您可以在“单元测试会话”窗口的测试会话选项卡中收集您的测试。然后,通过运行命令ReSharper.ReSharper_UnitTest_RunCurrentSession来运行所有这些测试。 在我的Visual Studio中,ReSharper.ReSharper_UnitTest_RunCurrentSession命令被分配为Ctrl+RCtrl+U


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