{ "info": { "author": "Fausto Carrera", "author_email": "fausto.carrera@gmx.com", "bugtrack_url": null, "classifiers": [ "Development Status :: 4 - Beta", "Environment :: Console", "Intended Audience :: Developers", "License :: OSI Approved :: MIT License", "Natural Language :: English", "Operating System :: OS Independent", "Operating System :: POSIX", "Programming Language :: Python", "Programming Language :: Python :: 3.5", "Topic :: Utilities" ], "description": "# PySmoke\n\nPySmoke is a command line tool to run smoke tests in your REST API using python and just config files.\n\nThe idea was born during a manual test with the testers of my current project, we where looking for a solution to automate smoke tests that requires little to no programming skills to work with and let the testers team check basic stuff on the API side with a basic fixture.\n\nThis is a work in progress and I'm working on it during my spare time.\n\n## Using the library\n\nYou have a single config file app.conf located on the `config/` folder holds the API URL and other variables used on your tests, and several test files called test groups, located on the `tests/` folder. All the tests files have the .test extension.\n\n__Config example:__\n\n```markdown\n[app]\nurl: https://jsonplaceholder.typicode.com\n\n[vars]\nuser_name: test@test.com\npassword: test1234\n```\n\n__Test file example:__\n\n```markdown\n[login]\nurl: /auth/login\nmethod: POST\nauthorization: None\npayload: {\"username\": \"%username%\", \"password\": \"%password%\"}\ntests:\n\thttp_status: 200\n\theaders.Location: true\n\tresult: true\n\tresult.version: true\n```\n\n__Commands:__\n\n| Command | Options | Description |\n|-----------------------|------------------------|-----------------------------------------|\n| `$ python pysmoke.py` | --help | Display help menu |\n| `$ python pysmoke.py` | | Run all the tests in all the groups |\n| `$ python pysmoke.py` | --filter get.test | Run all the tests on the get.test group |\n| `$ python pysmoke.py` | --filter get.test:list | Run the list test on the get.test group |\n| `$ python pysmoke.py` | --verbose | Run all the tests on verbose mode |\n| `$ python pysmoke.py` | --config ./app.conf | App configuracion file |\n| `$ python pysmoke.py` | --source ./tests | Tests folder |\n\n## How to start with the project\n\nClone the project:\n\n```\n$ git clone git@github.com:faustocarrera/pysmoke.git\n```\n\nOr download it:\n\n```\n$ wget https://github.com/faustocarrera/pysmoke/archive/master.zip\n```\n\nYou could use virtualenv or install everything globally.\n\n```\n$ virtualenv env -p python3\n$ env/bin/pip install -r requirements\n```\n\nSetup your API url on the `config/app.conf` file. \nModify or create test inside the tests folder, all the tests must have the .test extension. \nRun the app.\n\n```\n$ env/bin/python pysmoke.py\n```\n\nRun it on verbose mode. \n\n```\n$ env/bin/python pysmoke.py -v\n```\n\n\n", "description_content_type": "", "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://faustocarrera.github.io/pysmoke/", "keywords": "", "license": "GNU GENERAL PUBLIC LICENSE", "maintainer": "", "maintainer_email": "", "name": "pysmoke", "package_url": "https://pypi.org/project/pysmoke/", "platform": "", "project_url": "https://pypi.org/project/pysmoke/", "project_urls": { "Homepage": "https://faustocarrera.github.io/pysmoke/" }, "release_url": "https://pypi.org/project/pysmoke/1.1.0/", "requires_dist": [ "requests (>=2.4)", "click (>=4.1)", "pyopenssl (>=17.5)", "ndg-httpsclient (>=0.4)", "pytest (>=3.5)" ], "requires_python": "", "summary": "A command line tool to run smoke tests in your REST API using python and just config files.", "version": "1.1.0" }, "last_serial": 4125847, "releases": { "1.1.0": [ { "comment_text": "", "digests": { "md5": "d4e7e9000603369b675351dc647d4a7a", "sha256": "fc97db16fff973facba6bec1c2ce27e7477774cb914bee3648ea0bf6d714c60c" }, "downloads": -1, "filename": "pysmoke-1.1.0-py3-none-any.whl", "has_sig": false, "md5_digest": "d4e7e9000603369b675351dc647d4a7a", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 9015, "upload_time": "2018-08-01T19:05:36", "url": "https://files.pythonhosted.org/packages/d7/03/2695e5543408dca6b170b544dcb55caf88c8c79822697f4c97b3e9003c3a/pysmoke-1.1.0-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "0bd735e5dcdc3133acac93a507679fa3", "sha256": "71d24d1eb91353c042ca9b1d524bbdfaa38878025c400ed3926be3b5a70adc77" }, "downloads": -1, "filename": "pysmoke-1.1.0.tar.gz", "has_sig": false, "md5_digest": "0bd735e5dcdc3133acac93a507679fa3", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 6897, "upload_time": "2018-08-01T19:05:38", "url": "https://files.pythonhosted.org/packages/5e/17/5a17cce3382acca662b05a2a3d529938be9b89155ca4fd23ce9e4093ea0d/pysmoke-1.1.0.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "d4e7e9000603369b675351dc647d4a7a", "sha256": "fc97db16fff973facba6bec1c2ce27e7477774cb914bee3648ea0bf6d714c60c" }, "downloads": -1, "filename": "pysmoke-1.1.0-py3-none-any.whl", "has_sig": false, "md5_digest": "d4e7e9000603369b675351dc647d4a7a", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 9015, "upload_time": "2018-08-01T19:05:36", "url": "https://files.pythonhosted.org/packages/d7/03/2695e5543408dca6b170b544dcb55caf88c8c79822697f4c97b3e9003c3a/pysmoke-1.1.0-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "0bd735e5dcdc3133acac93a507679fa3", "sha256": "71d24d1eb91353c042ca9b1d524bbdfaa38878025c400ed3926be3b5a70adc77" }, "downloads": -1, "filename": "pysmoke-1.1.0.tar.gz", "has_sig": false, "md5_digest": "0bd735e5dcdc3133acac93a507679fa3", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 6897, "upload_time": "2018-08-01T19:05:38", "url": "https://files.pythonhosted.org/packages/5e/17/5a17cce3382acca662b05a2a3d529938be9b89155ca4fd23ce9e4093ea0d/pysmoke-1.1.0.tar.gz" } ] }