Member-only story
Testing your JSON API in Ruby with dry-rb
When writing a JSON API with Ruby in your favorite web framework, you will certainly come to a point, where you have to decide how to test your endpoints. In this article I’m going to show one of my preferred ways to test the structure of JSON responses in a clear and readable way—by making use of the dry-schema gem and some other dry-rb libraries.
There’s Different Ways
When it comes to testing your JSON API endpoints in Ruby, you can go for plenty of different approaches. The simplest probably is to check the status code and explicitly assert each value of you response data.
Let’s assume we want to test a GET /todos
endpoint, which returns to-do items like this:
Then a simple test for this response could look like this: