junit.xml plugin for Kiwi TCMS test case management system
Project description
This package allows you to read junit.xml files and send the results to Kiwi TCMS.
Installation
pip install kiwitcms-junit.xml-plugin
Configuration and environment
Minimal config file ~/.tcms.conf:
[tcms] url = https://tcms.server/xml-rpc/ username = your-username password = your-password
For more info see tcms-api docs.
This plugin is only concerned with parsing the junit.xml format and executing tcms-api functions which will create/reuse test cases, test plans and test runs. tcms-api behavior is controlled via environment variables.
For example this is how our own environment looks like:
#!/bin/bash if [ "$TRAVIS_EVENT_TYPE" == "push" ]; then # same as $TRAVIS_TAG when building tags export TCMS_PRODUCT_VERSION=$TRAVIS_BRANCH fi if [ "$TRAVIS_EVENT_TYPE" == "pull_request" ]; then export TCMS_PRODUCT_VERSION="PR-$TRAVIS_PULL_REQUEST" fi export TCMS_BUILD="$TRAVIS_BUILD_NUMBER-$(echo $TRAVIS_COMMIT | cut -c1-7)"
Further documentation and behavior specification can be found here.
The above configuration creates a separate TestPlan for each branch, see TP-7: [junit.xml] Plan for kiwitcms/junit.xml-plugin (master), a separate TestPlan for each pull request (recording possible multiple test runs) and separate TestPlan and TestRun for each tag on GitHub! tcms-api has default behavior for Travis CI and Jenkins and allows endless configuration via environment variables.
Usage
# define environment variables tcms-junit.xml-plugin /path/to/junit.xml
Changelog
v12.0 (16 Mar 2023)
Provide a --summary-template for optional customization of the summary generated from the test cases (Michael Kaye)
Update junitparser from 2.5.0 to 2.8.0
Update tcms-api from 11.3 to 11.4
Refactoring and code formatting
Add CodeQL workflow for GitHub code scanning
v11.3 (18 May 2022)
Update tcms-api from 11.2 to 11.3
Print information about created records if -v or --verbose is specified on the command line
Allow multiple XML files to be specified on the command line
v11.2 (16 May 2022)
Update junitparser from 2.2.0 to 2.5.0
Update tcms-api from 11.0 to 11.2
Annotate plugin with name & version information
Trim TestCase.summary to 255 characters. Fixes Issue #44
Updates around testing of this package
v11.0 (05 Dec 2021)
Future compatible with upcoming Kiwi TCMS v11.0
Update tcms-api to 11.0
Update junitparser from 2.0.0 to 2.2.0
Fix pylint issues
v10.0 (02 Mar 2021)
Compatible with Kiwi TCMS v10.0
Update tcms-api to 10.0
v9.0 (13 Jan 2021)
Compatible with Kiwi TCMS v9.0
Update tcms-api to 9.0
Update junitparser to 2.0.0
Adjusted code to handle jUnit v2.0 files
v8.4 (28 Oct 2020)
Update tcms-api to 8.6.0
Update junitparser to 1.6.0
v8.3 (10 Apr 2020)
Update to tcms-api v8.3.0 which uses gssapi for Kerberos
Requires MIT Kerberos for Windows if installed on Windows
v8.2 (03 Apr 2020)
This version works only with Kiwi TCMS v8.2 or later!
Update to tcms-api==8.2.0
Patch for changed return value in plugin_helpers.Backend.test_case_get_or_create()
Call plugin_helpers.backend.finish_test_run() when done
v8.0.1 (10 February 2020)
This version works only with Kiwi TCMS v8.0 or later!
Adjust plugin due to API changes in Kiwi TCMS v8.0
Require tcms-api==8.0.1
v0.5 (07 January 2020)
Update junitparser from 1.3.4 to 1.41
v0.4 (20 September 2019)
Update junitparser from 1.3.2 to 1.3.4
Support XML files with <testsuites> root tag (Katalon Studio). Fixes Issue #9
v0.3 (10 April 2019)
Works with Kiwi TCMS v6.7 or newer
Uses new names of API methods
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Hashes for kiwitcms-junit.xml-plugin-12.0.tar.gz
Algorithm | Hash digest | |
---|---|---|
SHA256 | 1e7fb3d94d52f728dd22cf1c6184814272143bc8533884daa15521f53fa82965 |
|
MD5 | 3a348d8edf03438853ba211e470be61d |
|
BLAKE2b-256 | dc2ecc074274014dec428556688008985e0c7a118f9f76ed7b161d684d6bd462 |
Hashes for kiwitcms_junit.xml_plugin-12.0-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 863a270b2935796b6d51e87b74f76c71d6861e7fdcb5a0b1d59586dfb11563f0 |
|
MD5 | ca05448bcf3f623c9e6ddecbb7084d89 |
|
BLAKE2b-256 | 30615ee4a042207349df90731ec24dcf52578cc978d41c6d6c2bc5c8325b249d |