Skip to main content

Build Status Build status codecov PyPI version

A Python library client for TestObject API

For more on the API you can visit TestObject’s docs here.

Getting Started

Installing

To install on your machine run:

pip install testobject

Once installed you can run something like:

import testobject
client = testobject.TestObject('myusername','my_api_key', password='password')
# Password only needed if using Session Reports
response = client.devices.get_devices()
devices = response.json()
us_devices = devices['US']

Running the tests

Tests are done with pytest. To run these simply run:

pytest

Docs

Get All Devices

response = client.devices.get_devices()
devices = response.json()
us_devices = devices['US']

Get Available Devices

response = client.devices.get_available_devices()
devices = response.json()
us_devices = devices['US']

Get Device

response = client.devices.get_device('iPhone_5_free')
device = response.json()

Get Session Reports

response = client.devices.get_session_reports(last_days=30, offset=1, limit=50)
reports = response.json()

Update Appium Suite

data = {}
data['title'] = "New Suite Title"
response = client.suites.update_suite(suite_number,data)
content = response.json()

Start Appium Suite Report

report = {'className': 'TOTestClass', 'dataCenterId': 'US', 'methodName': 'testMethod', 'deviceId': 'iPhone_5_free'}
data = [report] # If more than one test and/or class add more reports to the data list
response = to.suites.start_suite(suite_number, data)
content = response.json()

Stop Appium Suite Report

response = to.suites.stop_suite(suite_number, suite_report_number)
content = response.json()

Stop Appium Suite Test

response = to.suites.stop_suite_test(suite_number, suite_report_number, suite_test_number, True)
content = response.json()

Skip Appium Suite Test

response = to.suites.stop_suite_test(suite_number, suite_report_number, suite_test_number)
content = response.json()

Skip Appium Test Report

response = to.watcher.skip_test_report(appium_session_id)

Send Appium Test Report

response = to.watcher.report_test_result(appium_session_id,True)

Upload Application to Project

response = to.storage.upload_app(upload_app_path, display_name, False)

Get Test Report

response = to.reports.get_test_report(test_report_id)

Get Screenshot

response = to.reports.get_screenshot(test_report_id, screenshot_id)

Get Session Video

response = to.reports.get_video(video_id)

Get Appium Log

response = to.reports.get_appium_log(test_report_id)

Get Device Log

response = to.reports.get_device_log(test_report_id)

Get Device Vitals Log

response = to.reports.get_vitals_log(test_report_id)

Get XCUITest Log

response = to.reports.get_xcuitest_log(test_report_id)

Authors

License

This project is licensed under the MIT License - see the LICENSE file for details

Download files

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

Source Distribution

testobject-1.0.0.post1.tar.gz (4.7 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

testobject-1.0.0.post1-py2.py3-none-any.whl (6.8 kB view details)

Uploaded Python 2Python 3

File details

Details for the file testobject-1.0.0.post1.tar.gz.

File metadata

  • Download URL: testobject-1.0.0.post1.tar.gz
  • Upload date:
  • Size: 4.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.12.1 pkginfo/1.5.0.1 requests/2.22.0 setuptools/41.0.1 requests-toolbelt/0.8.0 tqdm/4.30.0 CPython/2.7.16

File hashes

Hashes for testobject-1.0.0.post1.tar.gz
Algorithm Hash digest
SHA256 6306764899460bb603c9efe17204946e877aba9f2946719f81c3fe0a324473ff
MD5 b9d154a07f5dea3cbfffd249b3a65f6e
BLAKE2b-256 0329eb7d7986d4f157a384149a7bfb237d27ef7c6b01ff47e23cbf820425b54d

See more details on using hashes here.

File details

Details for the file testobject-1.0.0.post1-py2.py3-none-any.whl.

File metadata

  • Download URL: testobject-1.0.0.post1-py2.py3-none-any.whl
  • Upload date:
  • Size: 6.8 kB
  • Tags: Python 2, Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.12.1 pkginfo/1.5.0.1 requests/2.22.0 setuptools/41.0.1 requests-toolbelt/0.8.0 tqdm/4.30.0 CPython/2.7.16

File hashes

Hashes for testobject-1.0.0.post1-py2.py3-none-any.whl
Algorithm Hash digest
SHA256 e9852fb252f29da31af08c002146cd2e88bab11aa046f2766f34e4344faf8d93
MD5 aec1bc83b5732e2fa41a62ab287272b2
BLAKE2b-256 84db4a53f79cf67397d71808503d9ab974f07381f892a007634e00fec605e9d0

See more details on using hashes here.

Release history Release notifications | RSS feed

This release

1.0.0.post1 This release

2 files

1.0.0

2 files

0.3.0

3 files

0.2.0

2 files

0.1.2

1 file

0.1.1

1 file

0.1.0

1 file

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page