In this post I will share with you what I have been learning about Hoppscotch, its main features and its differences with other similar tools.
What’s Hoppscotch?
Hoppscotch is a free, open-source, and lightweight API testing tool. Its core value relies on creating and using requests in a quick manner. It is available through a web app and also has a PWA (progressive web application) version and although it does not require registration to try the service, it is convenient to save the results in the cloud.
Hoppscotch offers a user interface where we can find support for Rest, WebSocket and GraphQL connections. You can easily send requests to APIs in different environments using Hoppscotch’s Environment and Environment Variable feature. The testing approach is similar to Postman, a simple code editor for writing test cases in Javascript.
Comparison chart
The following chart compares the main features of Hoppsctoch with its main alternative, Postman, and also against SoapUI as one of the main tools used for API testing in the market.
Hoppscotch | Postman | SoapUI |
Free & Open Source | Free & Pricing | Free & Pricing |
Web & PWA | Web & Desktop | Desktop |
– Rest. – GraphQL. – WebSocket. – Generate Documentation. | – API Repository. – API Tools. – GraphQL. – Integrations. | – SOAP/WSDL. – REST. – GraphQL. – JMS. |
Workspace: – Personal. | Workspaces: – Personal. – Team. – Public. | Workspaces: – Projects. |
Collections: – New Folder, Edit, Export, Delete. | Collections: – Share, Run, Add Request, Add Folder, Edit, Monitor Collection, Mock Collection, View Documentation, Export, Rename, Duplicate, Delete. – Authorization, Pre-request script, Test, Variables. – Run. – Share. | Projects: – TestSuites. – TestCases. – TestSteps. |
Environments: – Variables. | Environments: – Variables. – Share. | |
Request: – GET, POST, PUT, PATCH, DELETE, HEAD, CONNECT, OPTIONS, TRACE, CUSTOM. – Parameters. – Body. – Headers. – Authorization. – Pre-request Script. – Tests. | Request: – GET, POST, PUT, PATCH, DELETE, COPY, HEAD, OPTIONS, LINK, UNLINK, PURGE, LOCK,UNLOCK, PROPFIND, VIEW. – Params. – Authorization. – Headers. – Body. – Pre-request Script. – Tests. – Settings. | Request: – GET, POST, PUT, DELETE, HEAD, OPTIONS, TRACE, PATCH, PROPFIND,LOCK, UNLOCK, COPY, PURGE. – Parameters. – Auth. – Headers. – Attachments. – Representations. |
– | Mock Servers | Generate Mock Service |
– | Monitors | Monitor APIs |
– | Flows |
My experience with Hoppscotch
My first tests with the tool were for this review, and they were built invoking the API provided by Swagger called PetStore.
As I mentioned before, you can use both, its web version and the progressive web application. In my case I chose to install the last, since it is very simple and intuitive to use.
Logging into the app at hoppscotch.io shows you the option to install it locally, which is very easy to do. It is not really necessary to configure the application in any way, other than to log in with one of the available options, in order to save the workspace in the cloud.
Here are some screenshots taken while testing that shows how the tool looks like.
The first thing I did was to create the collections, organizing and storing the different requests in it:
Collections can also be exported as JSON and shared between teams.
When it comes to creating requests, you can use parameters or pass data through environment variables:
In the test section, you can use the snippets offered by the tool (eg: validate that the status code is 200):
The generation of the documentation is really simple to do. We go to the Docs section, select or import the collections that we want to incorporate and press “Generate documentation”:
To create a Gist with the generated documentation, you need to log in with GitHub.
Pros
Despite being a relatively new tool, it was launched in 2019. According to the community on GitHub, it is currently being used by more than 750,000 developers around the world and has more than 50,000 monthly users, which has made it a tool to consider for API Testing.
Some of the advantages of Hoppscotch are as follows:
- Lightweight and fast.
- Documentation generator.
- Support for WebSocket also allows SSE, Socket.IO and MQTT (Image 1).
- Dedicated GraphQL support allows you to easily view and create requests (Image 2).
- Features are on the rise thanks to community collaboration.
Image 1
Image 2
Cons
For the same reason that Hoppscotch is chosen by thousands of users since it is a relatively new tool, it can have some drawbacks.
Some of the disadvantages are:
- Little documentation
- Missing features for test automation
- Need to add some features by CLI.
When and why you may use Hoppscotch
Hoppscotch is the ideal tool for projects requiring manual and agile testing.
As the creator of Hoppscotch, Liyas Thomas, said on the dev.to blog, it is a tool that runs online, consumes very few resources, supports multiple platforms and devices, and is accessible from anywhere. In his own words: “There is no other tool so simple, minimalist and efficient.”
Another feature that makes Hoppscoth interesting is that it can be customized: from the background, accent color, font size, language and other features that are improving with the collaboration of the community.
It is also possible to configure a middleware between the application and the APIs, either through the use of a Proxy or by adding extensions for Chrome or Firefox:
The following diagram shows how ProxyScotch works:
Finally, for those who are interested in understanding more about Hoppscotch, you can check out the following repositories:
- Hoppscotch: API development ecosystem.
- Docs: Hoppsctoch documentation.
- Hopp-doc-gen: API documentation generator CLI.
- Hoppscotch-extension: Browser extensions to provide more capabilities.
- .github: Open source API development ecosystem.
- Hopp-cli: HTTP CLI client.
- ProxyScotch: A simple proxy server.
- Hopp-js-sandbox: Execute external JS scripts in defined sandboxes used by Hoppscotch clients.
Final thoughts
Hoppscotch is a 100% free tool and according to its creator, it always will be. It is simple and intuitive to use. It consumes very few resources in real-time, being ideal on low-end devices and becoming very agile on any device.
Although it is still in the development process, at the rate that its features are increasing, it would not be surprising to see how its automation functionalities end up matching its equivalent Postman in the near future.
References
Hoppscotch: https://hoppscotch.io/es
Documentation: https://docs.hoppscotch.io/
Repos: https://github.com/orgs/hoppscotch/repositories
Creator: Liyas Thomas
Follow us on Linkedin, Twitter, Instagram, and Facebook to be part of our community!
Related Posts
Michael Bolton to Speak at TestingUY, Latin America’s Largest Testing Conference
Michael Bolton is coming this May to Montevideo to deliver the closing keynote at the fourth annual TestingUY. Since it all started in 2014, Abstracta has been an organizer of TestingUY, with our co-founder, Federico Toledo PhD, playing a major role in planning the event…
9 Tips for Successful User Testing (and some GIFs)
User testing helps avoid costly mistakes and unsuccessful product launches. Here are some tips for getting started. When we access an application and can’t find the information we are looking for in a short amount of time or don’t like the way it’s designed, most of…