Page History
Table of Contents |
---|
About JUnit
JUnit is a testing framework for Java, mostly focused on unit testing.
In fact, Junit It is also used for writing integration and acceptance tests, making use of other libraries such as Selenium.
JUnit was massively used by the Java community and thus, its XML test result reports have become a de facto standard for test result reporting.
JUnit XML reports may be created by many different testing frameworks , either if they’re for Java, JavascriptJavaScript, Ruby, Python, Javascript or any other language.
JUnit Basic Concepts
...
JUnit provides way more concepts , such as (Test Runners, Test Fixtures, Categories, and more, etc.) although they are not relevant in this context.
Importing JUnit XML reports
Bellow Below is a simplified example of a JUnit XML report , containing a Test Suite with one Test Case.
No Format |
---|
<?xml version="1.0" ?> <testsuites> <testsuite errors="0" failures="0" id="0" name="my test suite" tests="1"> <testcase classname="some.class.name" name="Test1" time="123.345000"/> </testsuite> </testsuites> |
The simplified tags hierarchy of these reports can be represented in the following diagram:
Entities
JUnit’s Test Cases are identified by the pair of attributes “classname” and “name” attributes.
Test Cases are imported to Xray’s Generic Test issues, and the “classname” and “name” attributes are concatenated and mapped to the “Generic Test Definition” field of the Generic Test.
If a Test already exists with the same “Generic Generic Test Definition”Definition, then it is not created again.
Test Cases are imported to a new (or a user-specified) Test Execution in the context of some project, along with their respective execution results.
JUnit’s Test Suites are not mapped to any special entity. However, the execution details screen will show the Test Suite related with to a specific test result.
Status
The status of the Test Run will be set based on the Test Case result (see next table for the mappings).:
Test Cases |
---|
Test status | |
---|---|
with failures | FAIL |
with errors | FAIL |
skipped | TODO |
without failures, errors |
, and weren’t skipped | PASS |
---|
Note: Test Cases with the status FAIL , may have an error/failure message which can be seen in the Test Run screen, under the Results section.
If the same Test Case has been executed on multiple Test Suites, then the result for each Test Suite will be shown.
Whenever When a Test Case is executed in multiple Test Suites, the overall status of the Test Run will be calculated as the a joint value.
Condition | Overall status of the Test Run |
---|---|
If all the mapped results of the Test Case was PASS | PASS |
If any of the mapped results of the Test Case was FAIL | FAIL |
Other cases | TODO |