В этом посте мы рассмотрим, какие инструменты/технологии нам нужны для написания тестов API с использованием JavaScript, а затем мы также напишем наш первый тест API. Итак, приступим…
⚙️ Зависимости:
Во-первых, нам нужно установить следующие зависимости для настройки нашей базовой структуры:
- Node JS и NPM (для установки пакетов ниже)
- Mocha JS (для тестового фреймворка)
- Chai JS (для утверждений)
- Супертест (для вызовов API)
- Вавилон (для использования ES6+ в наших тестах)
Примечание. Вышеуказанные библиотеки/фреймворки не являются обязательными для использования, вы можете заменить любую из них или все для достижения желаемых целей.
📁 Настройте свой проект:
Вы можете посмотреть видео по установке ниже, чтобы узнать, как установить все эти пакеты и настроить проект.
✍️ Написать тест API:
Как только вы настроите свой проект, мы начнем писать наш тест API в файле users.js
(созданном как часть установочного видео выше).
import supertest from 'supertest'; const request = supertest('https://gorest.co.in/public-api/');
import { expect } from 'chai';
// watch the installation video to create your token const TOKEN = {your_token_here}
describe('Users', () => { it('GET /users', (done) => { // make a GET call to the users api request.get(`users?access-token=${TOKEN}`).end((err, res) => { // assertion to ensure data is not empty expect(res.body.data).to.not.be.empty; // done callback to handle async calls done(); }); }); });
🏃♂️ Запустите тест:
Теперь пришло время запустить тест, вы можете сделать это, выполнив команду mocha
или выполнив npm test
, которая также запустит ту же команду mocha
, если вы следовали видео по установке.
Вот и все, мы только что создали наш первый тест API, и он успешно прошел 🙌.
Время праздновать -
Посмотрите это видео, чтобы увидеть подробное объяснение того, как написать свой первый тест API:
Вы также можете клонировать репозиторий GitHub, чтобы получить доступ к этому коду.
Чтобы узнать больше о тестировании API, ознакомьтесь с моей серией бесплатных руководств здесь —
Я надеюсь, что этот пост помог вам, дайте мне знать в комментариях ниже!
Удачного тестирования! 😄
…
Подпишитесь на мой канал YouTube
Поддержите мою работу — https://www.buymeacoffee.com/automationbro
Подпишитесь на @automationbro в Twitter