views:

2127

answers:

7

For obvious productivity reasons, I make an effort of learning and using as many of the keyboard shortcuts for the various Re# commands.

However, it seems that the unit test runner does not have any associated shortcut keys. I want to be able to select certain tests and be able to run or debug them without resorting to grabbing the mouse each time. Is using the mouse my only option?

+17  A: 

ReSharper adds items to Visual Studio's keyboard settings dialog box.

Go to:

Tools -> Options, Environment -> Keyboard

In the search bar, type "resharper" and see the vast options that you can control with the keyboard.

Specifically, there is one to launch the unit test explorer window, and there's a couple called

  • ReSharper.ReSharper_UnitTest_RunSolution
  • ReSharper.ReSharper_UnitTest_RunContext

that are likely what you need.

Ben Scheirman
and in another note, I don't use this... I map CTRL+T to TestDriven.NET.
Ben Scheirman
Ctrl+T now maps to 'Go to type' in R#, so I ended up using Alt+T as an alternative.
Even Mien
Even - I thinks that's when you choose to preserve VS key bindings, which I don't. In fact, most R# users I know choose the R# key bindings, as they seem to feel more natural (at least to me)
Ben Scheirman
+1  A: 

You might want to check this short-cut cheatsheet.

BTW, even if there's no default key, you can probably bind one by going to the menu Tools->Options, and then to the sub-category General->Keyboard, and typing ReSharper in the search line.

dguaraglia
OK, Ben Scheirman pointed out exactly what options you are looking for.
dguaraglia
Here's the short-cut cheat sheet for Version 4.0: http://www.jetbrains.com/resharper/docs/ReSharper40DefaultKeymap.pdf
Josh Kodroff
A: 

Sadly, no, but I found this forum post

There are commands listed in the Tools - Options - Keybaord dialog of VS2008 for resharper unit test runner

Resharper.Resharper_UnitTest_ContextRun Resharper.Resharper_UnitTest_RunCurrentSession Resharper.Resharper_UnitTest_RunSolution

Have you tried assigning a keyboard shortcut to these, because I use MSTF and its own test runner, I run all my tests using its shortcut of ctrl r + a, and to run an individual test I either click on the resharper icon (I have Gallio installed) or use test driven.net context menu to run the test.

casademora
+10  A: 

As for running all tests in solution the command is Alt-RUN, i.e. Alt-R for ReSharper menu, U for Unit Testing, and N for all tests in solution.

NOTE: I found this answer from from stackoverflow user ilya-ryzhenkov on a related question

bentford
+8  A: 

You could try ... ALT R U R
- if your cursor is in the Test method, then R# just runs that test
- if its in a test class, but not a method, R# runs all the tests in the class

SteveC
+3  A: 

For Resharper 4.5 OOTB:

Unit Test Explorer : Ctrl+Alt+U
Unit Test Sessions : Ctrl+Alt+T
Close Active Window : Shift+Esc

I just noticed last week that my keyboard has a right-click button between Alt and Ctrl on the right side, so no mouse needed to mouse to a specific test. Yeah!

Custom key mapping via Ben Scheirman's method:
ReSharper.ReSharper_UnitTest_ContextDebug : Alt+T, Alt+D
ReSharper.ReSharper_UnitTest_ContextProfile : Alt+T, Alt+P
ReSharper.ReSharper_UnitTest_ContextRun : Alt+T, Alt+T and Alt+T, Alt+R
ReSharper.ReSharper_UnitTest_RunSolution : Alt+T, Alt+S
ReSharper.ReSharper_UnitTest_RunSolution : Alt+T, Alt+A

Even Mien
A: 

Since the time I originally asked this question, this is what I have been using:

Open 'Unit Test Explorer' and 'Unit Test Session' windows

Selecting a single test in 'Unit Test Session'

  • to select a test, use arrow keys to navigate

Selecting multiple tests in 'Unit Test Session'

  • to select multiple continous tests, hold the Shift key down while navigating with the arrow keys
  • to select multiple non-continous tests, hold Ctrl key while using arrows keys and toggle Spacebar to select/deselect tests

Run and execute tests in 'Unit Test Session'

  • press context menu button (found between the Alt and Ctrl buttons on most Windows-centric keyboards)

    or

  • alternatively, press Shift + F10

  • navigate with arrow keys within context window and hit Enter on any selection

    or

  • for Run Selected Tests, press r + Enter

  • for Debug Selected Tests, press d

Select call stack error line hyperlinks

  • if a test fails and the call stack is displayed splitting the 'Session' window, press Tab to navigate from the test section to the error links in the lower section

  • after tabbing to a specific error line, hit Enter to go to line of code with the runtime error

  • press Shift + Tab mutliple times as necessary to go backwards from the call stack (lower) section back to the unit tests (upper) section

Ray Vega