opentmi-client 0.10.3

Creator: railscoder56

Last updated:

Add to Cart

Description:

opentmiclient 0.10.3

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 and exec.verdict. Allowed values for result verdict is: pass, fail, inconclusive, blocked and error. 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.


Use environment variables (tries login automatically when constructor is called):

Using username and password: OPENTMI_USERNAME and OPENTMI_PASSWORD or
Using github access token: OPENTMI_GITHUB_ACCESS_TOKEN


use token in host like http://<token>@localhost

LICENSE
MIT

License

For personal and professional use. You cannot resell or redistribute these repositories in their original state.

Customer Reviews

There are no reviews.