Daily Usage Issues

Performance issue with *very* long test arguments

Started by John Brett on 5,479 views

I've just upgraded to 2.4.0.2 and I've seen a severe change in performance, which I believe I've tracked down to a specific test.
The issue I've seen (and this is a change since the previous version of NCrunch I was using) is that the IDE becomes unresponsive between most operations (typically for 15 to 18 seconds), and periodically crashing. Using ProcExp, I can see that most of the effort is spent in gdi.MeasureString, usually snapshotted whilst waiting for a lock.

The test I believe is responsible for this was parameterized with a *very* long string (>411,000 characters).
[TestCase("POLYGON((296728.92642699997 205150.602408,297355.359789 205352.119332,297355.3597...
public void MakeValidPolygons(string wkt)
{
...
}
I accept that this isn't a normal case, and the performance of my system has returned to normal since I refactored that particular testcase into its own test with non-parameterized data.

However, it's a change of behavior with NCrunch, so I thought I'd bring your attention to it.

John
Hi John -

Thanks for sharing this issue. The change would be due to the new Tree Grid control used to render test names in the Tests Window. The long name must have given it a bit of extra work to handle! I'll see if there's a way to improve the handling of this. Thanks again for bringing it to my attention.

Post a reply

Log in to reply.