Dredd
Language-agnostic HTTP API Testing Tool
README
Dredd — HTTP API Testing Framework

Dredd is a language-agnostic command-line tool for validating
API description document against backend implementation of the API.
- [Documentation][]
- [Changelog][]
- [Contributor's Guidelines][]
Dredd reads your API description and step by step validates whether your API
implementation replies with responses as they are described in the
documentation.
Supported API Description Formats
- [API Blueprint][]
- [OpenAPI 2][] (formerly known as Swagger)
- [OpenAPI 3][] (experimental, contributions welcome!)
Supported Hooks Languages
Dredd supports writing hooks
— a glue code for each test setup and teardown. Following languages are supported:
- Go
- Perl
- PHP
- Python
- Ruby
- Rust
- Didn't find your favorite language? _Add a new one!_
Supported Systems
- Linux, macOS, Windows, ...
- [Travis CI][], [CircleCI][], [Jenkins][], [AppVeyor][], ...
Installation
- ```
- $ npm install -g dredd
- ```
Quick Start
1. Create an [API Blueprint][] file called api-description.apib.
Follow [tutorial at API Blueprint website][api blueprint tutorial]
or just take one of the [ready-made examples][api blueprint examples].
2. Run interactive configuration:
- ``` sh
- $ dredd init
- ```
3. Run Dredd:
- ``` sh
- $ dredd
- ```
4. To see how to use all Dredd's features, browse the
[full documentation][documentation].
Howtos, Tutorials, Blogposts (3rd party)
- Maintenir à jour sa documentation d'API avec Dredd! _05/06/2019_
- Laravel OpenAPI 3 Documentation Verification Using Dredd _02/24/2019_
- Testing your API with Dredd _09/27/2018_
- Design-first API Specification Workflow Matures _03/01/2018_
- Testing an API Against its Documentation _11/23/2017_
- Keeping Documentation Honest _11/21/2017_
- Apiary designed APIs tested using Dredd _09/20/2017_
- Dredd + Swagger for REST API testing _01/24/2017_
- Testing Your API Documentation With Dredd _08/08/2016_
- DREDD API Tester works with API Blueprints _07/05/2016_
- Dredd v1.1.0: A Bit Different _06/20/2016_
- Dredd: Do Your HTTP API Justice _01/28/2015_
[api blueprint]: https://apiblueprint.org/
[api blueprint tutorial]: https://apiblueprint.org/documentation/tutorial.html
[api blueprint examples]: https://github.com/apiaryio/api-blueprint/tree/master/examples
[openapi 2]: https://github.com/OAI/OpenAPI-Specification/blob/master/versions/2.0.md
[openapi 3]: https://github.com/OAI/OpenAPI-Specification/blob/master/versions/3.0.0.md
[documentation]: https://dredd.org/en/latest/
[changelog]: https://github.com/apiaryio/dredd/releases
[contributor's guidelines]: https://dredd.org/en/latest/contributing/
[travis ci]: https://travis-ci.org/
[circleci]: https://circleci.com/
[jenkins]: https://jenkins.io/
[appveyor]: https://www.appveyor.com/