Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Adding more information to TestResult.xml file from NUnit

I would like to be able to add a "message" to a unit test, such that it actually appears within the TestResult.xml file generated by NUnit. For example, this is currently generated:

<results>
    <test-case name="MyNamespace.Tests.MyTest" executed="True" success="True" time="0.203" asserts="4" />
</results>

I would like to be able to have an additional attribute (or node as the case may be), such as:

<results>
    <test-case name="MyNamespace.Tests.MyTest" executed="True" success="True" time="0.203" asserts="4" message="Tested that some condition was met." />
</results>

The idea is that "message" above would somehow be defined within the test method itself (in my case, generated at run-time). Is there a property somewhere that I'm missing to be able to do something like this?

like image 650
Ryan Duffield Avatar asked Sep 04 '08 19:09

Ryan Duffield


2 Answers

In the recent NUnit releases you can do:

Assert.AreEqual(250.00, destination.Balance, "some message here");

Where "Some message here" can be a constant message or a message generated at runtime and stored in a string variable. These messages will only appear in the output however if the assertion fails. Usually, however, you only need information about failing tests so I recommend building up a string by adding each previous message and then using that string variable as the message in all of your asserts. This allows you to get all of the information you need from failing tests.

like image 188
Cpt. Jack Sparrow Avatar answered Oct 26 '22 06:10

Cpt. Jack Sparrow


This may be missing the point, but how about naming the tests so they indicate what they test - then you may not even need the message.

If it proves to be absolutely necessary, I think you'll need to produce your own testrunner that would (off the top of my head) read an additional attribute off the TestCase and attach it to the output.

like image 20
Blair Conrad Avatar answered Oct 26 '22 05:10

Blair Conrad