Scott Hanselman

TestDriven.NET Keyboard Bindings for Visual Studio.NET

February 2, '05 Comments [4] Posted in Bugs | Tools
Sponsored By

I've been meaning to do this for months, and Gordon reminds me to. If you are a TDD person and you use Test Driven.NET, nothing has changed your development life in the last year than right-click "Run Tests."  I was always irritated by the mouse action, and never got around to assigning keys. Now I've assigned Ctrl-Alt-F5 to "TestDriven.NET.Debugger." That along will save me at least 10 minutes of mousing in a development day.  I've also added Shift-Ctrl-T (Test) to compliment Shift-Ctrl-B (Build).

TestDriven.NET Keyboard Bindings -I did a little exploring today and discovered that you can assign keystrokes to these commands. Under Tools | Options, Keyboard, the commands you're looking for are:

TestDriven.NET.Client - The equivalent of the run test cases menu option, this will run test cases on whatever the active window is.
TestDriven.NET.Debugger - This is the same as the run in debbuger option, it will run the code in the active window in the debugger.
TestDriven.NET.Solution - This will run all the test cases in the current solution
The 80/20 Solution - TestDriven.NET Keyboard Bindings

About Scott

Scott Hanselman is a former professor, former Chief Architect in finance, now speaker, consultant, father, diabetic, and Microsoft employee. He is a failed stand-up comic, a cornrower, and a book author.

facebook twitter subscribe
About   Newsletter
Sponsored By
Hosting By
Dedicated Windows Server Hosting by SherWeb
Thursday, 03 February 2005 16:19:52 UTC
There's a little information about the commands available in TD.NET here:

http://weblogs.asp.net/nunitaddin/archive/2004/10/15/242756.aspx

Not one of my most intelligible posts. ;)
Thursday, 03 February 2005 23:44:45 UTC
Help!
I tried assigning these keys, 'cause it's such a good idea. I've actually been wondering this isn't in there by default. Anyway, I assigned the keys, but I must have screwed it up. I assigned it to Ctrl-Alt-F5 like you did, only it hijacked F5. So now, I have no way to start the normal debugger! Ahhhhh!
I've tried assigning it and re-assigning the key back to Debug.Start (it always shows up in the keyboard dialog as being assigned to Debug.Start): nothing. I've tried repairing VS: nothing. I've tried re-installing VS: nothing. And no combinations of the above work either. Things are looking grave. A format of the disk is quickly becoming the only possibility. I tried uninstalling TDD.NET but then I'll get an error dialog saying it can't find the location of the program %PROGRAMFILES%\TestDriven\ProcessInvocation.exe.

AND it's bug crunch time at work where this happened. Not a good day
Friday, 04 February 2005 00:57:51 UTC
I think something like the following must have happened....

You started test with debugger. This works by pointing the current project's debug settings at ProcessInvoker.exe with references to the target's assembly and methods. The debugger is then started. These settings are reset when debugging finnishes.

If the project's settings were saved and for some reason Visual Studio never came out of debugging mode (say it crashed), TD.NET wouldn't get a chance to reset these settings.

To fix this - go into your project's properties page. Under 'Configuration Properties/Debugging/Debug Mode' - change it from 'Program' to 'Project'.

I'm sorry about the hassle. Luckily this isn't something that happens very often!
Friday, 15 April 2005 05:36:00 UTC
I had the same problem that Jason Kemp described.
I've assigned short key, ran test in debugger and then I found that I am not able to start application normally.
Fortunately I've noticed in debug output that
"ProcessInvocation.exe: domain-NUnitAddin.NUnit.dll was terminated"
Search in Google for "ProcessInvocation.exe" pointed me to this blog.
Thanks you for described fix.
Note that the problem happened after I assigned the shortkey. I didn't have the problems before, when I used mouse.
Comments are closed.

Disclaimer: The opinions expressed herein are my own personal opinions and do not represent my employer's view in any way.