Let’s take a look at how to write API tests using JavaScript for the HTTP POST method.
So when working with the POST method, one of the key things to remember is to send the request data along with the request. Let’s take a look at an example of creating a new user using the POST method –
it('POST /users', () => { // data to send with the request const data = { email: `test-${Math.floor(Math.random() * 9999)}@mail.ca`, name: 'Test name', gender: 'Male', status: 'Inactive', }; return request .post('users') // hitting the POST route .set('Authorization', `Bearer ${TOKEN}`) // setting token for authentication .send(data) .then((res) => { // validate the entire response data using Chai assertion expect(res.body.data).to.deep.include(data); }); });
So the above code will create a new user for us and will give a similar response back –
{ code: 201, meta: null, data: { id: 1437, name: 'Test name', email: 'test-6243@mail.ca', gender: 'Male', status: 'Inactive', created_at: '2020-09-27T04:15:02.057+05:30', updated_at: '2020-09-27T04:15:02.057+05:30' } }
There you go, that’s all we need to do to create an API test for HTTP POST method. ?
Check out this video to see a detailed explanation on how to work with HTTP POST method:
You can also clone the GitHub repo to access this code