Skip to main content

Test Anything Protocol (TAP) plugin for Kiwi TCMS test case management system

Project description

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.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. Fixes Issue #9

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

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

kiwitcms-tap-plugin-8.2.tar.gz (18.6 kB view details)

Uploaded Source

Built Distribution

kiwitcms_tap_plugin-8.2-py3-none-any.whl (7.2 kB view details)

Uploaded Python 3

File details

Details for the file kiwitcms-tap-plugin-8.2.tar.gz.

File metadata

  • Download URL: kiwitcms-tap-plugin-8.2.tar.gz
  • Upload date:
  • Size: 18.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.1.1 pkginfo/1.5.0.1 requests/2.22.0 setuptools/45.1.0 requests-toolbelt/0.9.1 tqdm/4.41.1 CPython/3.6.9

File hashes

Hashes for kiwitcms-tap-plugin-8.2.tar.gz
Algorithm Hash digest
SHA256 eb5f06c6a08c604464e383d4ead2d9a5bc220e0491e4cff9a33f286720e980a8
MD5 0c3cad8b3ae5e76fba72e79674618ba9
BLAKE2b-256 26820b55a0e01a6166e11c69e20f419392d280439b518c81d226ff61eb3adbbb

See more details on using hashes here.

File details

Details for the file kiwitcms_tap_plugin-8.2-py3-none-any.whl.

File metadata

  • Download URL: kiwitcms_tap_plugin-8.2-py3-none-any.whl
  • Upload date:
  • Size: 7.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.1.1 pkginfo/1.5.0.1 requests/2.22.0 setuptools/45.1.0 requests-toolbelt/0.9.1 tqdm/4.41.1 CPython/3.6.9

File hashes

Hashes for kiwitcms_tap_plugin-8.2-py3-none-any.whl
Algorithm Hash digest
SHA256 9aeeb5fc2ac821e872412b0d0a832527f5ca644e73407415db1cea5b19f1e40c
MD5 459e7fcc70e49dd8504ae06a676a2b46
BLAKE2b-256 d6e155fcfa7b06fdf5ce2bea7f3e099e4a0cc34048cddf44669cceb193c2a4cf

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page