Running nunit against multiple assemblies and creating single StoryQ report

Dec 2, 2010 at 7:59 PM

My organization has 30+ unit test assemblies and I have begun creating StoryQ tests throughout them. We are using NUnit to run our tests. I would like tests in all assemblies to be included in a single StoryQ report file but the NUNit run results in only one assembly's tests documented in the StoryQ report file. Has anyone solved this problem?

I've read the source code and was considering updating the report writer to optionally append to an existing xml file. Any suggestions?


Dec 2, 2010 at 8:04 PM

Hi Caley

At the moment, you get one file per app domain. The test running I use during development (Resharper) will run multiple assemblies at once, so I end up with a single xml file.

How, exactly, are you running your tests? Command line / Gui? How is it setup?

Dec 3, 2010 at 6:08 PM

Thanks for the response. I found the file save call attached to the AppDomain.CurrentDomain.DomainUnload event. Makes perfect sense.

I am running NUNit from the console. It turns out that, by default, when running tests against multiple assemblies NUnit will create a new AppDomain for each Assembly. Obviously this will then cause StoryQ to save reports for each assembly (overwriting the previous). NUnit has a command line switch (/domain:Single) to use a single AppDomain for all test assemblies. This should have worked but exposed a bug (undocumented feature?) in NUnit where if this switch was applied then the assemblies have to be specified with full paths instead of relative paths. Once I used fully qualified paths it works like a charm.