/mockbin

Mock, Test & Track HTTP Requests and Responses.

Primary LanguageJavaScriptMIT LicenseMIT

Mockbin version License

Build Status Downloads Code Climate Coverage Status Dependencies Gitter

Mockbin is used internally and maintained by Mashape, who also maintain the open-source API Gateway Kong.

Table of contents

Features

  • uses HAR format
  • supports JSON, YAML, XML, HTML output
  • plays nice with proxies (uses the X-Forwarded-* headers for IP resolution)
  • allows for HTTP Method Override using the header X-HTTP-Method-Override or through query string parameter: _method
  • create custom bins for experimenting log collection

Installation

install from source or through npm:

npm install mockbin

Heroku

Deploy

read more on Installation.

Docker

Docker

read more on Installation.

Requirements

other than the dependencies listed in package.json The following are required:

Configuration

you will need to tell mockbin where Redis is:

npm config set mockbin:redis redis://127.0.0.1:6379

By Default the server will run on port 8080, you can customize the port like so:

npm config set mockbin:port 8001

read more on Configuration.

Running

After installing the npm package you can now start the server like so:

npm start

Usage

  Usage: mockbin [options]

  Options:

    -h, --help         output usage information
    -V, --version      output the version number
    -p, --port <port>  Port that the HTTP server will run on
    -r, --redis [dsn]  Redis dsn
    -q, --quiet        Disable console logging

Documentation

Read the full API documentation, please review the API Docs.

Bugs and feature requests

Have a bug or a feature request? Please first read the issue guidelines and search for existing and closed issues. If your problem or idea is not addressed yet, please open a new issue.

Contributing

Please read through our contributing guidelines. Included are directions for opening issues, coding standards, and notes on development.

More over, if your pull request contains JavaScript patches or features, you must include relevant unit tests.

Editor preferences are available in the editor config for easy use in common text editors. Read more and download plugins at http://editorconfig.org.

Versioning

For transparency into our release cycle and in striving to maintain backward compatibility, this project is maintained under the Semantic Versioning guidelines. Sometimes we screw up, but we'll adhere to these rules whenever possible.

Releases will be numbered with the following format:

<major>.<minor>.<patch>

And constructed with the following guidelines:

  • Breaking backward compatibility bumps the major while resetting minor and patch
  • New additions without breaking backward compatibility bumps the minor while resetting the patch
  • Bug fixes and misc changes bumps only the patch

For more information on SemVer, please visit http://semver.org/.

License

MIT © Mashape