{ "info": { "author": "Oleg Nikiforov", "author_email": "nikiphor@hotmail.com", "bugtrack_url": null, "classifiers": [ "Development Status :: 3 - Alpha", "Intended Audience :: Developers", "License :: OSI Approved :: Apache Software License", "Operating System :: OS Independent", "Programming Language :: Python", "Programming Language :: Python :: 3", "Topic :: Software Development :: Testing" ], "description": "BDD-style Rest API testing tool\n\nIt uses python's `requests `_ for performing HTTP requests, `nose `_ for most assertions, `trafaret `_ for json validation and `behave `_ for BDD style of tests.\n\nInstallation\n------------\nClone `project `_\n\nRun \n::\n\n pip install -r requirements.txt # install required dependencies\n\nOR\n\nRun \n::\n \n pip install behave_rest\n\nRunning\n-------\n\n::\n\n # to execute all feature files (all tests)\n behave\n \n # to execture specific feature\n behave features/twitter.feature\n \n # to see printed output add --no-capture\n behave --no-capture\n \n # run features with specific tags\n behave --tags=without_login --tags=slow\n\n\nMore about behave tool you can read here https://pythonhosted.org/behave/index.html\n\nTest example\n------------\n::\n\n Feature: Twitter search\n \n Background: Setup environment\n Given I set base URL to \"https://api.twitter.com/1.1/search\"\n And I set \"Authorization\" header to \"context.twitter_auth\"\n \n Scenario: Search for tweets\n When I make a GET request to \"tweets.json\" with parameters\n |q|\n |stanfy|\n Then the response status code should equal 200\n And the response structure should equal \"twitterSearchData\"\n And the response header \"status\" should equal \"200 OK\"\n\n\nYou can get test feature files from the `project repo `_\n\nCI reports\n----------\nBehave support JUnit reports, that are easily parsed by CI tools\n\nTo enable JUnit reports, create `behave.ini` file:\n::\n\n [behave]\n junit=true\n\nReports are generated into `/reports` folder\n\nAnother useful options to add into `behave.ini` are:\n\n`stdout_capture=False` to add printed output into reports\n\n`show_timings=no` to hide timing of each step\n\nProject Structure\n-----------------\n\nFeature files are intended to locate in `/features` folder\n\nCorresponding steps are located in `/features/steps`\n\nOverall project structure is as follows:\n\n::\n \n +-- features/\n \n +-- conf.yaml // store project config (urls, global variables, etc.)\n \n +-- environment.py // context setup steps (e.g. load from config)\n \n +-- *.feature // feature files\n \n +-- steps/\n \n +-- __init__.py // used to import predefined steps\n \n +-- json_responses.py // response structures described in Trafaret format\n \n +-- *.py // steps related to corresponding feature (e.g. \"login.py\" contains steps that are related to \"login.feature\")", "description_content_type": null, "docs_url": null, "download_url": "UNKNOWN", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/stanfy/behave-rest", "keywords": null, "license": "Apache Software License", "maintainer": null, "maintainer_email": null, "name": "behave-rest", "package_url": "https://pypi.org/project/behave-rest/", "platform": "UNKNOWN", "project_url": "https://pypi.org/project/behave-rest/", "project_urls": { "Download": "UNKNOWN", "Homepage": "https://github.com/stanfy/behave-rest" }, "release_url": "https://pypi.org/project/behave-rest/0.1.3/", "requires_dist": null, "requires_python": null, "summary": "BDD-style Rest API testing tool", "version": "0.1.3" }, "last_serial": 2406096, "releases": { "0.1.0": [], "0.1.1": [ { "comment_text": "", "digests": { "md5": "bc0d80e3753101357dc096a14fe58866", "sha256": "7e969d66a2813b493124f6f02c7fbdbcf25009fb02d22cdbb204baa7719234c9" }, "downloads": -1, "filename": "behave-rest-0.1.1.tar.gz", "has_sig": false, "md5_digest": "bc0d80e3753101357dc096a14fe58866", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 4083, "upload_time": "2016-08-16T12:21:29", "url": "https://files.pythonhosted.org/packages/4b/4f/1852c0fedc2844c54f08c9e65cf540cb906c0e0030505d693351b48d8dad/behave-rest-0.1.1.tar.gz" } ], "0.1.2": [ { "comment_text": "", "digests": { "md5": "647ea8d274ad83b86f6b14d455bc98f9", "sha256": "f9cf749b8ed18107e52e14f51c3d727d61c36aed12eeca5cda21dc5561b413e7" }, "downloads": -1, "filename": "behave-rest-0.1.2.tar.gz", "has_sig": false, "md5_digest": "647ea8d274ad83b86f6b14d455bc98f9", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 4813, "upload_time": "2016-09-12T11:30:59", "url": "https://files.pythonhosted.org/packages/ff/c8/9fe73ba612635e11795102284e8fde8c5ff98425f842cbd147c70b627f72/behave-rest-0.1.2.tar.gz" } ], "0.1.3": [ { "comment_text": "", "digests": { "md5": "2b8053c1c24c2219aa4c8a9ede1f5a50", "sha256": "26863ca0163f1e5cffc7be04d07339954ce9f5171e802a18471a4068e465a2a6" }, "downloads": -1, "filename": "behave-rest-0.1.3.tar.gz", "has_sig": false, "md5_digest": "2b8053c1c24c2219aa4c8a9ede1f5a50", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 5078, "upload_time": "2016-10-18T09:49:12", "url": "https://files.pythonhosted.org/packages/f7/93/b072ece7394d6aa64ad012f4aa01d6612dfaf8f9f3fd2fef68b18d487764/behave-rest-0.1.3.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "2b8053c1c24c2219aa4c8a9ede1f5a50", "sha256": "26863ca0163f1e5cffc7be04d07339954ce9f5171e802a18471a4068e465a2a6" }, "downloads": -1, "filename": "behave-rest-0.1.3.tar.gz", "has_sig": false, "md5_digest": "2b8053c1c24c2219aa4c8a9ede1f5a50", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 5078, "upload_time": "2016-10-18T09:49:12", "url": "https://files.pythonhosted.org/packages/f7/93/b072ece7394d6aa64ad012f4aa01d6612dfaf8f9f3fd2fef68b18d487764/behave-rest-0.1.3.tar.gz" } ] }