Hi,
I'm not sure if this qualifies as a bugreport and/or feature request or just asking for help so I make this post.
This is somewhat related to the
following forum post but rather expands upon it.
Generally ncrunch will reuse a test runner when instructed to do so by rightclicking a test, choosing advanced and then debug/run in existing test runner.
However if this will work or not seem to depend on under what circumstances the test runner process was created.
a) If the test runner was created as a result of choosing debug/run in existing test runner then this process will be reused when repeating that action.
b) If the test runner was created as a result of the engine running a testmethod due to it changing then this test runner process will be reused when debugging/running a test method in existing test runner.
c) If the test runner was created as a result of the default debug/run test method (i.e. in new process) then this process
will never be reused when debugging/running a test method in existing test runner. Instead a second test runner process will be spawned.
To me this case C is inconsistent with the behavior of cases A and B especially since the behavior of the engine is to spawn a new process whenever it automatically runs one or more test methods. So case B and C are in direct conflict with each other.
I was looking for a setting that would control how the engine goes about this and there seem to be no setting to control the test runner reuse. I.e. spawn a new process (as it does now) or reuse an existing process. I also looked into the custom engine mode and I realised that the engine mode simply overrides the ncrunch settings.
If there was a setting that would allow for changing this behavior then the default setting could be to spawn a new process. This would allow for the global override or the creation of a custom engine mode.
So to sum it up I basically would like it if
1) a process spawned as the result of debugging/running a test in a new test runner process was able to be reused instead of just sitting there and hogging memory
2) there was a way to force the engine to reuse the test runner processes when it runs test methods as a result of them changing
3) there was easier access to the debug/run in existing process menu commands
I feel this would give a noticable boost in productivity for my team and for anyone else looking to optimize their test execution.
Thanks,
Johan