OK so I've spent a day in order to fix this.
The problem is we use a custom Autofixture [AutoData] attribute on every test.
Our attribute's constructor creates a TestServer for running the web tests against.
https://docs.microsoft.c...ing/integration-testing
We then inject the test server into each test, i.e.
[Scenario]
[RepairsWebHostAutoData]
public void CreateRepair(
WebApiClientFixture apiFixture
I've created a minimal repo with reproduction for you here:
https://github.com/mattfrear/SlowNCrunch
If you add whitespace to my Test1(), then remove the whitespace, you'll see NCrunch's spinning B for like 60 seconds.
The bug IMO is that NCrunch is executing the constructor of the attribute during the Build step, instead of only when running the test.
In my case, I fixed this by introducing a base class for all of my tests which creates the TestServer (during test run), and dropped our custom [AutoData] attribute.
Matt