This package allows you to read Test Anything Protocol (TAP) files and send the results to Kiwi TCMS.
pip install kiwitcms-tap-plugin
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 TAP 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-6: [TAP] Plan for kiwitcms/tap-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.
# define environment variables tcms-tap-plugin /path/to/results.tap
This version works only with Kiwi TCMS v8.0 or later!
- Update to tcms-api==8.0.1
This version works only with Kiwi TCMS v8.0 or later!
- Adjust plugin due to API changes in Kiwi TCMS v8.0
- Update
tap.pyfrom 2.6.2 to 3.0 - Require
tcms-api>=8.0
- Update
tap.pydependency from 2.6.1 to 2.6.2
- Include traceback from TAP file as TE comment. Fixes Issue #7 (Christophe CHAUVET)
- Works with Kiwi TCMS v6.7 or newer
- Uses new names of API methods