Robot Framework XML Results¶
Getting Started¶
You can find the installation instructions for Robot Framework Python installed.
Settings, execution & exporting¶
When running your project, make sure to include --ouputDir results
in the command to make it easier to zip them later:
robot --ouputDir results --report --output
After all the tests are completed, you can zip all the xml, png and html results together:
zip -r xml_report.zip /results/*.xml;
zip -r html_report.zip /results/*.html;
zip -r screenshots.zip /results/*.png;
Finally run the curl command to send your results to Calliope Pro
curl -X POST \
-H "Content-Type:multipart/form-data" \
-H "x-api-key:<API_KEY>" \
-F "file[]=xml_report.zip" \
-F "attachment[]=html_report.zip" \
-F "attachment[]=screenshots.zip" \
-F "tag[]=robot_framework" \
-F "tag[]=your_project" \
-F "tag[]=build_version:123" \
"https://app.calliope.pro/api/v2/profile/<profile_id>/import"
Supported files¶
We accept the whole /results/
folder from RobotFramework:
output.xml
log.html
(optional)report.html
(optional)-
screenshot.png
(we will automatically match attached filenames with the filenames used in output.xml) -
Download our example file here: example_robotframework_report.xml{ download="" }
- Official Robot Framework documentation: Robot Framework Repository
Structure¶
<robot>
- The top-level element of a Robot Framework result file. Thegenerator
attribute is used to figure out the platform and OS. Thegenerated
attribute is used to determine the creation time if not set by the URL parameters.<suite>
- Suites will become the top-level container. Theirid
andsource
attributes are included in its description.<test>
- Tests are included as sub-containers of the above-mentioned top-level suites.<kw>
- Top-level keywords are the first results in test sub-containers. Consequent lower levels of<kw>
elements are put in the description with a PASSED or FAILED tag prepended to them.<doc>
- Doc elements are included in the exception description and describe in more detail what a keyword does.<msg>
- Every keyword can include a multitude of<msg>
elements. These are also included in the exception description. Theirtimestamp
element is used to show when this message was thrown and theirlevel
element shows if this is just INFO or possibly a FAIL.<status>
- Determines the status of a certain keyword where thestatus
attribute determines the status. The possible states are PASS or FAIL. Thestarttime
andendtime
attributes are used to determine the duration of a test.
Unsupported Features¶
Arguments¶
Some <kw>
elements include a list of arguments to show what kind of data was filled in for certain tests. When
relevant, this information can be found back in the log.html
file. This is why it's recommended to include
the report.html
and log.html
file in the import.
Statistics¶
The bottom of a Robot Framework report includes statistics. Calliope automatically generates these for you, therefore the statistics included in a Robot Framework report will be ignored.