{ "info": { "author": "Enrique Gonzalez", "author_email": "egonzalezh94@gmail.com", "bugtrack_url": null, "classifiers": [], "description": "# testobject-python-api\n\n[![Build Status](https://travis-ci.org/enriquegh/testobject-python-api.svg?branch=master)](https://travis-ci.org/enriquegh/testobject-python-api) [![Build status](https://ci.appveyor.com/api/projects/status/6pd46pbwrggq7rwa/branch/master?svg=true)](https://ci.appveyor.com/project/enriquegh/testobject-python-api/branch/master) [![codecov](https://codecov.io/gh/enriquegh/testobject-python-api/branch/master/graph/badge.svg)](https://codecov.io/gh/enriquegh/testobject-python-api) [![PyPI version](https://badge.fury.io/py/testobject.svg)](https://badge.fury.io/py/testobject) \n\nA Python library client for TestObject API\n\nFor more on the API you can visit TestObject's docs [here](https://api.testobject.com/).\n\n## Getting Started\n\n### Installing\n\nTo install on your machine run:\n```bash\npip install testobject\n```\n\nOnce installed you can run something like:\n```python\nimport testobject\nclient = testobject.TestObject('myusername','my_api_key', password='password')\n# Password only needed if using Session Reports\nresponse = client.devices.get_devices()\ndevices = response.json()\nus_devices = devices['US']\n```\n\n\n## Running the tests\n\nTests are done with pytest.\nTo run these simply run:\n```bash\npytest\n```\n\n## Docs\n\n### Get All Devices\n\n```python\nresponse = client.devices.get_devices()\ndevices = response.json()\nus_devices = devices['US']\n```\n\n### Get Available Devices\n\n```python\nresponse = client.devices.get_available_devices()\ndevices = response.json()\nus_devices = devices['US']\n```\n\n### Get Device\n\n```python\nresponse = client.devices.get_device('iPhone_5_free')\ndevice = response.json()\n```\n\n### Get Session Reports\n```python\nresponse = client.devices.get_session_reports(last_days=30, offset=1, limit=50)\nreports = response.json()\n```\n\n### Update Appium Suite\n\n```python\ndata = {}\ndata['title'] = \"New Suite Title\"\nresponse = client.suites.update_suite(suite_number,data)\ncontent = response.json()\n```\n\n### Start Appium Suite Report\n\n```python\nreport = {'className': 'TOTestClass', 'dataCenterId': 'US', 'methodName': 'testMethod', 'deviceId': 'iPhone_5_free'}\ndata = [report] # If more than one test and/or class add more reports to the data list\nresponse = to.suites.start_suite(suite_number, data)\ncontent = response.json()\n```\n\n### Stop Appium Suite Report\n\n```python\nresponse = to.suites.stop_suite(suite_number, suite_report_number)\ncontent = response.json()\n```\n\n### Stop Appium Suite Test\n\n```python\nresponse = to.suites.stop_suite_test(suite_number, suite_report_number, suite_test_number, True)\ncontent = response.json()\n```\n\n### Skip Appium Suite Test\n\n```python\nresponse = to.suites.stop_suite_test(suite_number, suite_report_number, suite_test_number)\ncontent = response.json()\n```\n\n### Skip Appium Test Report\n\n```python\nresponse = to.watcher.skip_test_report(appium_session_id)\n```\n\n### Send Appium Test Report\n\n```python\nresponse = to.watcher.skip_test_report(appium_session_id,True)\n```\n\n### Upload Application to Project\n\n```python\nresponse = to.storage.upload_app(upload_app_path, display_name, False)\n```\n\n### Get Test Report\n\n```python\nresponse = to.reports.get_test_report(test_report_id)\n```\n\n### Get Screenshot\n\n```python\nresponse = to.reports.get_screenshot(test_report_id, screenshot_id)\n```\n\n### Get Session Video\n\n```python\nresponse = to.reports.get_video(video_id)\n```\n\n### Get Appium Log\n\n```python\nresponse = to.reports.get_appium_log(test_report_id)\n```\n\n### Get Device Log\n\n```python\nresponse = to.reports.get_device_log(test_report_id)\n```\n\n### Get Device Vitals Log\n\n```python\nresponse = to.reports.get_device_log(test_report_id)\n```\n\n### Get XCUITest Log\n\n```python\nresponse = to.reports.get_xcuitest_log(test_report_id)\n```\n\n## Authors\n\n* **Enrique Gonzalez** - *Maintainer* - [enriquegh](https://github.com/enriquegh)\n\n## License\n\nThis project is licensed under the MIT License - see the [LICENSE](LICENSE) file for details", "description_content_type": "", "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/enriquegh/testobject-python-api", "keywords": "wrapper-api,testobject", "license": "MIT", "maintainer": "", "maintainer_email": "", "name": "testobject", "package_url": "https://pypi.org/project/testobject/", "platform": "", "project_url": "https://pypi.org/project/testobject/", "project_urls": { "Homepage": "https://github.com/enriquegh/testobject-python-api" }, "release_url": "https://pypi.org/project/testobject/0.3.0/", "requires_dist": null, "requires_python": "", "summary": "Python API wrapper for TestObject", "version": "0.3.0" }, "last_serial": 5379192, "releases": { "0.1.0": [ { "comment_text": "", "digests": { "md5": "ef925e53587fdcd916526c89ab288440", "sha256": "099f11e51fad314a430a897c93c1ed9be2f13e5e643ac73e9936b9d78072105d" }, "downloads": -1, "filename": "testobject-0.1.0.tar.gz", "has_sig": false, "md5_digest": "ef925e53587fdcd916526c89ab288440", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 2592, "upload_time": "2017-10-09T02:51:02", "url": "https://files.pythonhosted.org/packages/8d/5d/4f1942fd23f135cf1560b4fcbdba834668ae0e73ab38e7a9f33cfab79d48/testobject-0.1.0.tar.gz" } ], "0.1.1": [ { "comment_text": "", "digests": { "md5": "2c876c46899e375842c3318f4b8f0d70", "sha256": "d7977349c70a3f16d6bece4fb953c86bb0c239beb1983286aeabd4c48dd78b7a" }, "downloads": -1, "filename": "testobject-0.1.1.tar.gz", "has_sig": false, "md5_digest": "2c876c46899e375842c3318f4b8f0d70", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 2985, "upload_time": "2017-10-10T03:27:14", "url": "https://files.pythonhosted.org/packages/c2/ef/a9bc3faa90543213b86ee5e524bbf37d63b18a544cee4c38d6a1755c2fd8/testobject-0.1.1.tar.gz" } ], "0.1.2": [ { "comment_text": "", "digests": { "md5": "e5aaecb02ee9c21333477bc953bcd3ff", "sha256": "a563ba2c5db0678c12561e89604305af9beeed067900aaa76a35baac2fe35a53" }, "downloads": -1, "filename": "testobject-0.1.2.tar.gz", "has_sig": false, "md5_digest": "e5aaecb02ee9c21333477bc953bcd3ff", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 2994, "upload_time": "2017-12-06T19:09:56", "url": "https://files.pythonhosted.org/packages/35/3f/0951da342912098c87a4a722a635e1bdbdcfb5b63f638d8804999cefd361/testobject-0.1.2.tar.gz" } ], "0.2.0": [ { "comment_text": "", "digests": { "md5": "4854c834a02fcdaa7f209af202a839d2", "sha256": "d5a639f4b30928e1e820406f0661dd592be6119a46cb7d4ea0401c893c084749" }, "downloads": -1, "filename": "testobject-0.2.0-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "4854c834a02fcdaa7f209af202a839d2", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 6183, "upload_time": "2018-03-12T21:49:13", "url": "https://files.pythonhosted.org/packages/02/76/f487049b18b2cb6a4bda5eeb3544633a11b94b5a13845ddd8140588ec08a/testobject-0.2.0-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "8cfd9767b67f7c3e12d018dcd0f189f1", "sha256": "d98df512333a126507ee8d50c01cb8c9f6fb36d122e61b6a5d5e9d1eede2e74f" }, "downloads": -1, "filename": "testobject-0.2.0.tar.gz", "has_sig": false, "md5_digest": "8cfd9767b67f7c3e12d018dcd0f189f1", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 3201, "upload_time": "2018-03-12T03:41:55", "url": "https://files.pythonhosted.org/packages/97/b5/0e718fecf37763652456430b1101b04261168cd0dfd1a60daee96e4d74da/testobject-0.2.0.tar.gz" } ], "0.3.0": [ { "comment_text": "", "digests": { "md5": "64c32d040095ac4b8a62235f6328744b", "sha256": "199119d685782f5563e3cf9953eff831ff25e9d2072ef4c4332b9b3c79b3bfb4" }, "downloads": -1, "filename": "testobject-0.3.0-py2-none-any.whl", "has_sig": false, "md5_digest": "64c32d040095ac4b8a62235f6328744b", "packagetype": "bdist_wheel", "python_version": "py2", "requires_python": null, "size": 6527, "upload_time": "2019-06-10T00:06:46", "url": "https://files.pythonhosted.org/packages/9b/39/8e2e03d9c0df7a0fc88c5c027128d422f116887840b897d830e7b7b3d0c5/testobject-0.3.0-py2-none-any.whl" }, { "comment_text": "", "digests": { "md5": "1fb2c0e4036992746d48c9bc23a60398", "sha256": "5499be76ac789e8f98524a4d8f110b5d4d163d3539b73f82f3e13e863747a7da" }, "downloads": -1, "filename": "testobject-0.3.0-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "1fb2c0e4036992746d48c9bc23a60398", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 6531, "upload_time": "2019-06-10T00:06:47", "url": "https://files.pythonhosted.org/packages/e0/14/cbe6c052bc704ff13327d1e81737e227c1e7baf1d8cb819001a9a1b88800/testobject-0.3.0-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "ba339d9e9fc13808df74cdeb77da0f2c", "sha256": "e3a8a6d0562151a9896f2c3936080220e4a8f33177a2da19aaca45a316156568" }, "downloads": -1, "filename": "testobject-0.3.0.tar.gz", "has_sig": false, "md5_digest": "ba339d9e9fc13808df74cdeb77da0f2c", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 3809, "upload_time": "2019-01-27T00:35:53", "url": "https://files.pythonhosted.org/packages/59/2d/909a7f58688f63665edfaa9faf62d553a101e45b2637237a111863a51f0a/testobject-0.3.0.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "64c32d040095ac4b8a62235f6328744b", "sha256": "199119d685782f5563e3cf9953eff831ff25e9d2072ef4c4332b9b3c79b3bfb4" }, "downloads": -1, "filename": "testobject-0.3.0-py2-none-any.whl", "has_sig": false, "md5_digest": "64c32d040095ac4b8a62235f6328744b", "packagetype": "bdist_wheel", "python_version": "py2", "requires_python": null, "size": 6527, "upload_time": "2019-06-10T00:06:46", "url": "https://files.pythonhosted.org/packages/9b/39/8e2e03d9c0df7a0fc88c5c027128d422f116887840b897d830e7b7b3d0c5/testobject-0.3.0-py2-none-any.whl" }, { "comment_text": "", "digests": { "md5": "1fb2c0e4036992746d48c9bc23a60398", "sha256": "5499be76ac789e8f98524a4d8f110b5d4d163d3539b73f82f3e13e863747a7da" }, "downloads": -1, "filename": "testobject-0.3.0-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "1fb2c0e4036992746d48c9bc23a60398", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 6531, "upload_time": "2019-06-10T00:06:47", "url": "https://files.pythonhosted.org/packages/e0/14/cbe6c052bc704ff13327d1e81737e227c1e7baf1d8cb819001a9a1b88800/testobject-0.3.0-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "ba339d9e9fc13808df74cdeb77da0f2c", "sha256": "e3a8a6d0562151a9896f2c3936080220e4a8f33177a2da19aaca45a316156568" }, "downloads": -1, "filename": "testobject-0.3.0.tar.gz", "has_sig": false, "md5_digest": "ba339d9e9fc13808df74cdeb77da0f2c", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 3809, "upload_time": "2019-01-27T00:35:53", "url": "https://files.pythonhosted.org/packages/59/2d/909a7f58688f63665edfaa9faf62d553a101e45b2637237a111863a51f0a/testobject-0.3.0.tar.gz" } ] }