Let's take a look at how to write API tests using JavaScript for HTTP GET method.
So in the previous post, we wrote a basic GET test to get us started, and now we'll take a step further and write a couple more of GET tests to get a good understanding of them.
Accessing an individual resource
In this test, we'll try to access data for an individual user.
// access the user data based on the id provided
it('GET /users/:id', () => {
return request.get(`users/1?access-token=${TOKEN}`).then((res) => {
// validate the data being returned is of the expected user
expect(res.body.data.id).to.be.eq(1);
});
});
Working with query parameters
Sometimes, you need to provide query params to filter out the data being requested.
// Filtering data based on page, gender and status
it('GET /users with query params', () => {
const url = `users?access-token=${TOKEN}&page=5&gender=Female&status=Active`;
return request.get(url).then((res) => {
expect(res.body.data).to.not.be.empty;
// validate all the data being returned are as per the query params provided
res.body.data.forEach((data) => {
expect(data.gender).to.eq('Female');
expect(data.status).to.eq('Active');
});
});
});
Alright, so this covers pretty much the majority of the scenarios that you will work with when writing API tests for HTTP GET methods. π
Check out this video to see a detailed explanation on how to work with HTTP GET method:
You can also clone the GitHub repo to access this code
To learn more about API testing, check out my free tutorial series here -
I hope this post helped you out, let me know in the comments below!
Happy testing! π
...
Subscribe to my YouTube channel
Support my work - https://www.buymeacoffee.com/automationbro
Follow @automationbro on Twitter
Top comments (0)