Jim and I just shipped the second CTP for xUnit.net 1.5. As is the theme for 1.5, this release is primarily about updating the GUI runner. We’ve made quite a bit of progress since we released CTP 1 about 7 weeks ago.
“Sticky” results in the test list
Previously, when you did any refinements, all information about the last test run was lost. Now, we are preserving last run information. You can even refine the test list while tests are running.
We added a trait box to the refinements section of the GUI (and made the refinements use the entire left side of the GUI window. Traits are displayed grouped by their name, and selecting multiple traits (with the Ctrl key) filters to methods which match any of the given traits.
Automatic reloading of modified assemblies
We support automatically reloading assemblies, and since test assemblies are always shadow copied, you can leave the GUI running while re-compiling your work. We also added a right-click menu to assemblies which allows you to unload or reload any assembly manually. We also added the ability to specify which assemblies to load on the command line, which is useful for Visual Studio integration.
User interface tweaks
We added a test counter bar to the top of the test method list which shows status counts from the tests in your currently refined list. We also added better status icons. We also remember your last placement of the runner window for the next time you run. We also made some UI-related performance tweaks so that any slowness of the UI shouldn’t slow down the run speed of the tests.
There are still some UI tweaks to be done. Most notably, any test method which results in multiple runs (for example, [Theory] from the extensions project) is not well represented in the UI. We are considering what our exact strategy is for display here, as we’ve rapidly outgrown the ListView’s simple UI capabilities.
We would like to add project file support, so you can open a single file which will remember all the assemblies you have loaded as well as any refinements you’ve made.
Mostly, we’re hoping for more feedback on the UI so that we might be able to make useful tweaks one last time before we ship a new 1.5 RTM build!