why is dotCover Unit Test runner inoperative 'suddenly' Follow
Hi,
I have two development systems, a stationary and a laptop. Both running 64-bit Windows 7 and Visual Studio 2010 Professional with JetBrains dotCover 2.0 Full Edition Build 2.0.425.12
Both have been working fine with dotCover for months.
A few days ago in one of the systems, dotCover 'suddenly' stopped providing working options for running unit tests (NUnit).
- There are no icons in the left vertical bar of the code window in the test code.
- There are no "Run unit tests" options when right-clicking a test project in the solution explorer.
- The menu items under dotCover | Unit Tests -> are greyed out.
I have tried:
- installing the updated dotCover 2.1 - no change.
- Removing and/or disabling all other extensions and add-ins - no change.
- Run devenv /log to look at the activity log - nothing obvious there.
- Run devenv /resetskippkgs - no chage.
- Run devenv /setup - no change.
- Run devenv /resetsettings - no change.
- Looked at assembly loading with FusLogVw - hard to tell, but nothing obvious.
- Looked in the event log - nothing.
- Enabled viewing of tracing output with DbgView - nothing.
- Visually inspected devenv.exe.config - looks ok.
- Reapplying Visual Studio SP1 complete - no change.
Please note that I have one working, and one non-working systems. Both used to work...
Obviously something changed, but the only thing I recall that seems related at all is that I installed Visual Studio C# Express 2010 on the non-working system (since then removed - no change), and that I have Mono for Android installed and got some reminders about an update which at first appeared to crash Visual Studio when ignored, and then later I uninstalled that too - no change.
Are there any further suggestions except format the disk and re-install Windows from scratch? Any more logging mechanisms for example to determine why dotCover loads, but does not enable the unit testing runner?
Svante
Please sign in to leave a comment.
Ok, fixed. This seems like a really strange fluke...
After some searching, I found the directory %HOMEPATH%\AppData\Local\JetBrains\dotCover\v2.0\ExceptionStorage .
Here dotCover stores exceptions it encounters, and I found an exception there:
Could not load file or assembly 'VSLangProj2, Version=7.0.5000.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a' or one of its dependencies. The module was expected to contain an assembly manifest.
After some further investigation it appears that the GAC-copy of this assembly was corrupt! Anyone know how that can happen!?
Removing VSLangProj2.dll from the GAC and re-installing a fresh copy extracted from the GAC of the system where all was working finally fixed the problem.
That was a few very unproductive hours! On the bright side it was a good exercise in troubleshooting 3rd party software ;-)
To the JetBrains folks: This is a good example of the power of logging, kudos to you for logging - but please either log to an expected well known target such as the Event Log, or clearly document somewhere prominent where and how to find and use the logs!
Hello Svante,
Sorry for the late reply.
Thank you for the info about your investigation. I'm glad that you've managed to solve the problem!
I've opened a request about logging howto: http://youtrack.jetbrains.com/issue/DCVR-4699.
You are welcome to track its status.
Regards.