You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
Add support for custom properties in generated junit reports #153
Is your feature request related to a problem? Please describe.
Currently, the JUnit logger only allows logging the default fields.
JUnit supports adding custom properties for test cases, so e.g., the corresponding XML looks like this:
<testsuitestests="1"failures="2"skipped="3"errors="4"time="5.6">
<testsuitename="MyTest"timestamp="2025-02-06T09:48:35.147Z"tests="1"failures="0"skipped="0"time="1.467"errors="0">
<testcasename="My Test Case"classname="MyTest"time="6.467">
<properties>
<propertyname="team"value="My team name"></property>
<propertyname="type"value="integration"></property>
</properties>
</testcase>
</testsuite>
</testsuites>
Describe the solution you'd like
Traits can be picked up by the test logger and added as properties.
Depending on the framework, so for ...
... xUnit
[Trait("team","My team name")][Trait("type","integration")]classMyTestSuite{// tests here}
... NUnit
[Category("team","My team name")][Category("type","integration")]classMyTestSuite{// tests here}
the according trait would be parsed. Eventually this can be made configurable so it would work with any type of decorator?
Describe alternatives you've considered
I could extend the JUnit XML logger, unfortunately, all functionality is private and it's difficult to customize / e.g., add the package as a dependency and customize the logger.
If you opened that up, customization would be possible here, by simply extending that.
Activity
[-]Custom fields for junit reports[/-][+]Add support for custom properties in generated junit reports[/+]codito commentedon Feb 6, 2025
@timo-reymann thank you for the suggestion, this will be a great addition to the junit logger.
We can follow the implementation similar to NUnit logger (example) and also update the JUnit.xsd.
If you're open to contributing a fix, please let me know :)
timo-reymann commentedon Feb 7, 2025
@codito thanks for the swift response - sure thing will have a look and put an PR together :)
timo-reymann commentedon Feb 10, 2025
@codito created feat: [junit] #153 Add properties support on test case level for test logger #154, please let me know if anthing is wrong / missing 😊
feat!: [junit] #153 Add properties support on test case level for tes…
codito commentedon Feb 11, 2025
Thanks @timo-reymann! I will cut a release this weekend.
codito commentedon Feb 14, 2025
JUnitXml.TestLogger v6 with this feature is now on nuget! https://www.nuget.org/packages/JunitXml.TestLogger/6.0.0