Hoverfly is a lightweight, open source API simulation tool. Using Hoverfly, you can create realistic simulations of the APIs your application depends on.
- Replace slow, flaky API dependencies with realistic, re-usable simulations
- Simulate network latency, random failures or rate limits to test edge-cases
- Extend and customize with any programming language
- Export, share, edit and import API simulations
- CLI and native language bindings for Java
- REST API
- Lightweight, high-performance, run anywhere
- Apache 2 license
Hoverfly is developed and maintained by SpectoLabs.
Hoverfly Cloud - API simulations as a service. Sign up here.
Contributions are welcome!
To contribute, please:
- Fork the repository
- Create a feature branch on your fork
- Commit your changes, and create a pull request against Hoverfly's master branch
- In your pull request, include details regarding your change, i.e
- why you made it
- how to test it
- any information about testing you have performed
To read more about forking model, check out this link: forking workflow.
-
Install Go. You should follow the download and installation instructions for your OS from official Go website. If you have installed Go before using either
apt-get
orhomebrew
, you should uninstall those first. -
After the installation, find out the
GOPATH
usinggo env
, and then setup a source folder theremkdir $GOPATH/src
-
Clone the hoverfly project into your Go source folder:
cd $GOPATH/src mkdir -p github.com/SpectoLabs/ cd github.com/SpectoLabs/ git clone https://github.com/SpectoLabs/hoverfly.git # or: git clone https://github.com/<your_username>/hoverfly.git
-
Finally you can run the build
cd hoverfly make build
Notice the binaries are in the target
directory.
You should be able to execute all unit and functional tests with:
make test
Some middleware tests may fail if you don't have ruby
and python
setup in your environment. If you are using Mac, you can install them with Homebrew:
brew install ruby
brew install python
Apache License version 2.0 See LICENSE for details.
(c) SpectoLabs 2017.