/httprunner

One-stop solution for HTTP(S) testing.

Primary LanguagePythonApache License 2.0Apache-2.0

HttpRunner

LICENSE travis-ci coveralls pypi version pyversions

HttpRunner is an HTTP(S) protocol-oriented universal testing framework. Write testing scripts in YAML/JSON once, you can then achieve automated testing, performance testing, online monitoring, continuous integration and other testing needs.

Formerly known as ApiTestEngine.

Design Philosophy

  • Take full reuse of Python's existing powerful libraries: Requests, unittest and Locust.
  • Convention over configuration.
  • Pursuit of high rewards, write once and achieve a variety of testing needs

Key Features

  • Inherit all powerful features of Requests, just have fun to handle HTTP(S) in human way.
  • Define testcases in YAML or JSON format in concise and elegant manner.
  • Record and generate testcases with HAR support. see har2case.
  • Supports function/variable/extract/validate mechanisms to create full test scenarios.
  • Supports perfect hook mechanism.
  • With debugtalk.py plugin, module functions can be auto-discovered in recursive upward directories.
  • Testcases can be run in diverse ways, with single testcase, multiple testcases, or entire project folder.
  • Test report is concise and clear, with detailed log records.
  • With reuse of Locust, you can run performance test without extra work.
  • CLI command supported, perfect combination with CI/CD.

Documentation

HttpRunner is rich documented.

How to Contribute

  1. Check for open issues or open a fresh issue to start a discussion around a feature idea or a bug.
  2. Fork the repository on GitHub to start making your changes to the master branch (or branch off of it). You also need to comply with the development rules.
  3. Write a test which shows that the bug was fixed or that the feature works as expected.
  4. Send a pull request, you will then become a contributor after it gets merged and published.

Subscribe

关注 HttpRunner 的微信公众号,第一时间获得最新资讯。