Skip to content
Lightweight service virtualization/API simulation tool for developers and testers
Go Other
  1. Go 99.8%
  2. Other 0.2%
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
.circleci Fix CircleCI build Jul 22, 2019
.github/ISSUE_TEMPLATE Update bug_report.md Apr 29, 2019
core Updated hoverfly version to v1.1.1 Jul 22, 2019
docs Update docs Jul 23, 2019
examples lognormal distribution of delay Dec 4, 2018
functional-tests #862 Add overwrite-duplicate flag to hoverctl mode command Jul 22, 2019
hoverctl #862 Add overwrite-duplicate flag to hoverctl mode command Jul 22, 2019
scripts Add error checking for get hoverfly script, remove hardcoded version,… Jun 19, 2017
testdata #802 Reduce memory allocation using strings reader when reconstructin… Feb 13, 2019
vendor #865 Not set transfer-encoding header on 204 and 1xx response accordi… Jul 22, 2019
.gitattributes added gitattributes file Dec 2, 2015
.gitignore #855 add eclipse .project to the gitignore list Jul 7, 2019
Dockerfile adding alpine based image with CA certs Feb 19, 2019
Gopkg.lock
Gopkg.toml #865 Not set transfer-encoding header on 204 and 1xx response accordi… Jul 22, 2019
LICENSE minor docs updates Feb 10, 2017
Makefile Refactor benchmark test and add makefile target Feb 11, 2019
build-release.sh fix go linux amd64 to static linked Jan 3, 2018
hoverfly_logo.png Readding hoverfly logo Jun 12, 2017
readme.md Update readme.md Oct 31, 2018
schema.json Fix property orders in expected JSON schema Dec 4, 2018

readme.md

Hoverfly

Circle CI Documentation Status Join the chat at https://gitter.im/SpectoLabs/hoverfly

API simulations for development and testing

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.

Quickstart

Hoverfly Cloud

Hoverfly Cloud - API simulations as a service. Sign up here.

Contributing

Contributions are welcome!

To contribute, please:

  1. Fork the repository
  2. Create a feature branch on your fork
  3. Commit your changes, and create a pull request against Hoverfly's master branch
  4. In your pull request, include details regarding your change, i.e
    1. why you made it
    2. how to test it
    3. any information about testing you have performed

To read more about forking model, check out this link: forking workflow.

Setup for local development

Build

  1. 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 or homebrew, you should uninstall those first.

  2. After the installation, find out the GOPATH using go env, and then setup a source folder there

    mkdir $GOPATH/src
  3. 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
  4. Finally you can run the build

    cd hoverfly
    make build 

Notice the binaries are in the target directory.

Test

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

License

Apache License version 2.0 See LICENSE for details.

(c) SpectoLabs 2017.

You can’t perform that action at this time.