Skip to content

kiwitcms/tap-plugin

Repository files navigation

Test Anything Protocol (TAP) plugin for Kiwi TCMS

PyPI version Travis CI Code coverage Python updates TP for kiwitcms/tap-plugin (master) Tidelift Become a sponsor Kiwi TCMS on Twitter

This package allows you to read Test Anything Protocol (TAP) files and send the results to Kiwi TCMS.

Installation

pip install kiwitcms-tap-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 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.

Usage

# define environment variables
tcms-tap-plugin /path/to/results.tap

Changelog

v8.0.1 (10 February 2020)

This version works only with Kiwi TCMS v8.0 or later!

  • Update to tcms-api==8.0.1

v8.0 (09 February 2020)

This version works only with Kiwi TCMS v8.0 or later!

  • Adjust plugin due to API changes in Kiwi TCMS v8.0
  • Update tap.py from 2.6.2 to 3.0
  • Require tcms-api>=8.0

v0.5 (07 January 2020)

  • Update tap.py dependency from 2.6.1 to 2.6.2

v0.4 (23 September 2019)

  • Include traceback from TAP file as TE comment. Fixes Issue #7 (Christophe CHAUVET)

v0.3 (10 April 2019)

  • Works with Kiwi TCMS v6.7 or newer
  • Uses new names of API methods

About

Test Anything Protocol (TAP) plugin for Kiwi TCMS

Resources

License

Security policy

Stars

Watchers

Forks

Packages

 
 
 

Contributors