I was thinking about your proposal: exclude it from the NCrunch build, but that wouldn't help, as the auto-generated test project relies on the rest of the project. If I don't rebuild it, I don't test the changes in the project.
However, the part of it that is autogenerated, is a pre-build event using an MSBuild task. I changed the name of this task from
BeforeBuild to
BeforeRebuild. This helped for local builds vs. rebuilds. Now I am looking for a property that I can use, something like
Condition="!$(NCrunchBuild)", which allows me to do the prebuild step
only when the build is triggered by something other than NCrunch.
About the non-responsive NCrunch on 83%. Now that the build is successful, it still hangs, but it does first go over many tests (but not all, some 800 tests of approx. 9,000 tests). Then it stalls forever on 83% again (as in the screenshot). However, I found a way to "Cancel" the NCrunch build: simply disable NCrunch. It took about two minutes, but then NCrunch was disabled and the tasks were gone from task manager.
One small bug though on disabling: the text in the screen, "Loading code coverage data (83%)", remains in the screen. The animated circle changes to grey, and the text in the caption changes to the correct "NCrunch engine is disabled".
Managed to get the image BBCode working (I didn't point to the actual image, but to a page).
Step 1, after a restart, successful rebuild, I see variants of this:
Step 2, it freezes at some point, indefinitely, NCrunch tasks remain in task manager, main problem is that it is unclear what project the "1 project failed to build" points to, would be nice if it said so in the log (and properly canceled the rest of the build).
Step 3, after disabling NCrunch, it looks like this: