opentmi-client
Project description
Python Client library for OpenTMI
This is the Python client library for OpenTMI.
installation
To install, simply use pip
:
$ pip install --upgrade opentmi-client
See the Developers Guide if you want to develop this library.
Command Line Interface
Library provides Command line Interface to communicate with OpenTMI -backend
$ opentmi --help
usage: opentmi [-h] [-v] [-s] [--host HOST] [--user USER]
[--password PASSWORD] [--token TOKEN]
[--token_service TOKEN_SERVICE] [-p PORT]
<subcommand> ...
optional arguments:
-h, --help show this help message and exit
-v verbose level... repeat up to three times.
-s, --silent Silent - only errors will be printed
--host HOST OpenTMI host, default: localhost
--user USER username
--password PASSWORD password
--token TOKEN Authentication token
--token_service TOKEN_SERVICE
Optional authentication service
-p PORT, --port PORT OpenTMI port
subcommand:
<subcommand> sub-command help
version Display version information
list List something
store Create something
example:
opentmi --host localhost --port 3000 --list --testcases 1
Python API
from opentmi_client import OpenTmiClient, Result, Event
client = Client("https://127.0.0.1")
client.login_with_access_token("my-github-access-token")
# post result
result = Result()
result.tcid = "test-case-a"
result.verdict = "pass"
client.post_result(result)
# post event
event = Event()
event.msgid = "ALLOCATED"
event.priority.level = "info",
event.ref.resource = "5697740f956cd2fd35c69062"
client.post_event(event)
See more examples from here.
Server side Result schema can be found from here. and Test case schema is available here.
notes
tcid
-field have to be unique for each test cases.- There is couple mandatory fields by default:
tcid
andexec.verdict
. Allowed values for result verdict is:pass
,fail
,inconclusive
,blocked
anderror
.upload_results()
-function also create test case document if it doesn't exists in database.
Authentication
There are multiple options to authenticate:
- use
Client.login(<username>, <password>)
- use
Client.login_with_access_token(<token>, [<service>])
- service are optional and supported values depend on server support.
By default
github
is in use.
- service are optional and supported values depend on server support.
By default
- Use environment variables (tries login automatically when constructor is called):
- Using username and password:
OPENTMI_USERNAME
andOPENTMI_PASSWORD
or - Using github access token:
OPENTMI_GITHUB_ACCESS_TOKEN
- Using username and password:
- use token in host like
http://<token>@localhost
LICENSE
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
opentmi_client-0.11.0.tar.gz
(35.6 kB
view details)
Built Distribution
File details
Details for the file opentmi_client-0.11.0.tar.gz
.
File metadata
- Download URL: opentmi_client-0.11.0.tar.gz
- Upload date:
- Size: 35.6 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/5.1.1 CPython/3.12.7
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 1511b445fc5aa2582ec940829e4f0cb0522ac859d93975b02d7062565589fe83 |
|
MD5 | 379b0f554cccbbea040d6416cb9009ae |
|
BLAKE2b-256 | 82380fe421bef4e2c2897b90b9345eca569be22211afe00185ecc18582dbd0bb |
File details
Details for the file opentmi_client-0.11.0-py3-none-any.whl
.
File metadata
- Download URL: opentmi_client-0.11.0-py3-none-any.whl
- Upload date:
- Size: 43.1 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/5.1.1 CPython/3.12.7
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 51903db772107c98343334217a9dab9d00334abe018632c8a56868aacaa54387 |
|
MD5 | 89f1dbb78d6bbba6796f1b70759e0f43 |
|
BLAKE2b-256 | 806bfad54d21ac93f3747cb15875b53891c549a22b5dcea47e7da2ca82a6c2d9 |