Skip to main content

opentmi-client

Project description

Python Client library for OpenTMI

CircleCI Coverage Status

This library purpose is to provide simple interface for OpenTMI -backend.

installation

python setup.py install

Test

python setup.py test

Compile documentation

sphinx-apidoc -o docs/_static opentmi_client
make -C docs html

Command Line Interface

Library provides Command line Interface to communicate with OpenTMI -backend

/> opentmi --help
usage: opentmi [-h] [--version VERSION] [--host HOST] [-p PORT] [--list LIST]
               [--testcases TESTCASES]

optional arguments:
  -h, --help            show this help message and exit
  --version VERSION     Prints package version and exits
  --host HOST           OpenTMI host, default: localhost
  -p PORT, --port PORT  OpenTMI port
  --list LIST           List something
  --testcases TESTCASES

example:

opentmi --host localhost --port 3000 --list --testcases 1

Python API

from opentmi_client import Client
client = Client(host='127.0.0.1', port=3000)
campaigns = client.get_campaigns()
testcases = client.get_testcases()
result = {
  "tcid": "test-case",
  "campaign": "my-campaign",
  "exec": {
    "verdict": "pass",
    "duration": "8",
  },
  "sut": {
    "gitUrl": "github.com/opentmi/opentmi",
    "commitId": "123",
  },
  "dut": {
    "type": "hw",
    "vendor": "ABC",
    "model": "platform#1",
    "sn": "123"
  }
}
client.upload_results(result) # require valid result json object or converter function

Alternative you can set result_converter() and testcase_converter() -functions in OpenTmiClient constructor. Converter functions will be used to convert application specific result object for opentmi suitable format.

Suitable result schema is described here.

Test case document 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.

LICENSE: MIT

Project details


Download files

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

Files for opentmi-client, version 0.3.3
Filename, size File type Python version Upload date Hashes
Filename, size opentmi_client-0.3.3-py2-none-any.whl (12.9 kB) File type Wheel Python version py2 Upload date Hashes View
Filename, size opentmi_client-0.3.3.tar.gz (14.4 kB) File type Source Python version None Upload date Hashes View

Supported by

AWS AWS Cloud computing Datadog Datadog Monitoring DigiCert DigiCert EV certificate Facebook / Instagram Facebook / Instagram PSF Sponsor Fastly Fastly CDN Google Google Object Storage and Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Salesforce Salesforce PSF Sponsor Sentry Sentry Error logging StatusPage StatusPage Status page