RoboHydra HTTP client test tool

RoboHydra is a web server designed to help you test any kind of HTTP, HTTPS, or WebSockets client:

  • GUIs that use a public API,
  • Mobile applications that communicate with some server,
  • Complex Javascript front-ends that use a server as a data store,
  • Server applications that contact 3rd party servers,
  • And more! See the use case comics for more information.

RoboHydra allows you to easily build custom “mock” servers with little effort, be it to build a test suite or to easily reproduce problems while fixing bugs. RoboHydra also supports exploratory testing by allowing you to change its behaviour dynamically via its web interface. Last but not least, RoboHydra can also reverse proxy requests, which is useful in a variety of situations.

Documentation

To get started, go read the tutorial. There are also a number of screencasts in the YouTube channel, and Dev Opera published articles on how to use RoboHydra for front-end developer proxies and mock servers, and even one on advanced techniques.

For those of you already familiar with RoboHydra, there is also reference documentation available.

Download

First, make sure you have Node.js installed (version 10 should work). Then, type the following in a terminal:

npm install robohydra

The full source code is available on GitHub.

Updates

For updates and announcements, follow @robohydra on Twitter, subscribe to the development group on Google Groups, watch project robohydra on GitHub or subscribe to the RoboHydra channel on YouTube.

For the changes between versions, check the ChangeLog.

Note that this project is now in maintenance mode: for the most part, no new features are added, but there are occasional security updates.

License and copyright

This code is Copyright 2012-2016 Esteban Manchado Velázquez, and it’s released under the Apache 2.0 license. Jacob Rask did all the CSS for the admin interface (and I stole it for this website).

This project started at Opera Software ASA as an internal tool to test some of our projects. Large parts of this code were developed there, but as it’s pretty generic we decided to open source it.