Package: kiwitcms-tap-plugin
This package allows you to read Test Anything Protocol (TAP) files and
send the results toKiwi TCMS.Installationpip install kiwitcms-tap-pluginNote: this plugin should be installed on the system executing your automated tests
or a separate system whose task is to parse the results and import them into Kiwi TCMS.
This is usually not your Kiwi TCMS container!Configuration and environmentMinimal config file~/.tcms.conf:[tcms]
url = https://tcms.server/xml-rpc/
username = your-username
password = your-passwordFor more info seetcms-api docs.This plugin is only concerned with parsing the TAP format and executingtcms-apifunctions which will create/reuse test cases, test plans and test runs.tcms-apibehavior is controlled via environment variables.For example inside.github/workflows/testing.ymlthis looks like:export TCMS_PRODUCT=$GITHUB_REPOSITORY
export TCMS_PRODUCT_VERSION=$(echo $GITHUB_REF | sed "s|refs/heads/||" | sed "s|refs/||" | sed "s|/merge||")
export TCMS_BUILD=$(echo $GITHUB_SHA | cut -c1-7)Further documentation and behavior specification can be foundhere.The above configuration creates a separate TestPlan for each branch, for exampleTP-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-apihas default behavior
for Travis CI and Jenkins and allows endless configuration via environment variables.Usage# define environment variables
tcms-tap-plugin /path/to/results.tapChangelogv12.8.1 (22 Dec 2023)Update tcms-api from 12.7 to 12.8.1Relax dependency requirement towards tcms-api for easier upgradev12.7 (11 Dec 2023)Update tcms-api from 11.3 to 12.7Update README to avoid confusions where to install this package. ClosesIssue #62Build and test with Python 3.11Reformat source code with BlackEnable CodeQL for code scanningSmall refactoring internallyv11.3 (17 May 2022)Update tcms-api from 11.2 to 11.3Print information about created recrods if-vor--verboseis specified on the command lineAllow multiple TAP files to be specified on the command line. FixesIssue #57v11.2 (15 May 2022)Update tap.py from 3.0 to 3.1Update tcms-api from 11.0 to 11.2. ClosesIssue #5andIssue #13Fix bug with traceback not being posted as comment.Issue #48v11.0 (05 Dec 2021)Future compatible with upcoming Kiwi TCMS v11.0Update tcms-api from 10.0 to 11.0Pylint fixesv10.0 (02 Mar 2021)Compatible with Kiwi TCMS v10.0Update tcms-api to 10.0v9.0 (13 Jan 2021)Compatible with Kiwi TCMS v9.0Update tcms-api to 9.0Resolve a dependency issue in testsv8.4 (28 Oct 2020)Update tcms-api to 8.6.0v8.3 (10 Apr 2020)Update totcms-api v8.3.0which usesgssapifor KerberosRequires MIT Kerberos for Windows if installed on Windowsv8.2 (03 Apr 2020)This version works only with Kiwi TCMS v8.2 or later!Update to tcms-api==8.2.0Patch for changed return value inplugin_helpers.Backend.test_case_get_or_create()Callplugin_helpers.backend.finish_test_run()when done. FixesIssue #9v8.0.1 (10 February 2020)This version works only with Kiwi TCMS v8.0 or later!Update to tcms-api==8.0.1v8.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.0Updatetap.pyfrom 2.6.2 to 3.0Requiretcms-api>=8.0v0.5 (07 January 2020)Updatetap.pydependency from 2.6.1 to 2.6.2v0.4 (23 September 2019)Include traceback from TAP file as TE comment. FixesIssue #7(Christophe CHAUVET)v0.3 (10 April 2019)Works with Kiwi TCMS v6.7 or newerUses new names of API methods