Firstly - I love NUnit - and nobody has done more to increase the quality of .NET Applications than the contributors to this project - nobody.
But I know that next generation Unit testing framework authors are listening so I might as well state the things I'd like to see:
- I'd like to be able to run a single test from the command line. Not just a single fixture, but a specific test.
- I'd like my tests to be parameterizable. I'd like from the Command Line to run a test and provide the specific values.
- Wouldn't it be cool to create a batch file of scenarios? What about doing this in XML? Duh - no brainer.
- A lot of my tests in this case would simply wrap up and call business objects - so why not be able to have a virtual test in the xml file? That is just call a class/method directly with XML.I'm not saying this is the be all / end all - really the only kinds of assertions I could do realistically would be to test for certain exceptions or no exceptions. Return values? Possibly - but really - some times our methods accept and return things other than value types - but this might be a nice thing to have regardless.
With these things in place, one could conceivably:
- tie a class modelling tool into test scenarios. Hmm, I need a class, with a method and if I pass this data, I should get these results.
- If an end user reports a bug in my defect tracking system, I should be able to create an NUnit test that exposes this bug. Then my support people can come back from time to time, have the defect tracking system run the test to see if it's been fixed in a given patch/release/build, etc. and update the status on the defect.