Because NCrunch runs tests continuously over a codebase that may not necessarily be stable, it must stringently enforce test timeouts.
As not all tests will make use of attributes to specify a timeout value, this configuration setting is used to provide a default timeout that will be applied to all tests that have not specified their own timeout.
Timeouts are specified in milliseconds (ms) and will be applied to all tests declared within the applicable project.
Where this setting is 0, NCrunch will not enforce a default timeout.
It's very important that all tests have a sensible timeout value applied to them. As NCrunch frequently executes tests over unstable code, there is a high risk that tests may hang and block up the test pipeline. Without any possibility for hung tests to time out, the NCrunch engine can seize up entirely.
When long running tests fail falsely due to timeout, it is much better practice to assign individual timeout values to these tests, instead of changing the default timeout for the entire project.