Project

General

Profile

Cleanup #47118

Updated by Ernesto Puerta over 3 years ago

Jenkins support JUnit test output by means of the already installed JUnit plugin. This can help to better understand Jenkins failures (as it allows Jenkins to distinguish between build and testing failures). Additionally, it provides "historical charts of number of tests failed":https://stackoverflow.com/questions/20957818/is-there-a-way-to-define-number-of-builds-for-junit-test-results-in-jenkins, time to complete, improved error messages, it can be integrated with other Jenkins plugins (like "Test Result Analyzer":https://plugins.jenkins.io/test-results-analyzer/), and other features like coverage.

JUnit support could be added to the following dashboard tests:
* **make check**: @ctest@ might output XML with @ctest -T Test@, but the XML generated is not JUnit compatible. It either needs "Jenkins XUnit Plugin":https://plugins.jenkins.io/xunit/ instead. This "XSL":https://github.com/rpavlik/jenkins-ctest-plugin/blob/master/ctest-to-junit.xsl could also be tried to convert CTest XML into JUnit XML.
* **Dashboard front-end e2e tests**: "Cypress supports JUnit":https://docs.cypress.io/guides/tooling/reporters.htm
* **API tests**: while @nose@ and @pytest@ have native support for JUnit, we are using @unittest@, which does not. However, a third party tool ("@unittest-xml-reporting@":https://pypi.org/project/unittest-xml-reporting/) can do the trick.

Back