Рубрики
Без рубрики

Тестирование вашего API с почтальоном

Я уверен, что вы уже знаете, что знаменитый инструмент вызов почтальона. Это супер полезный инструмент для проверки вашего API и смотрит на ответ, которую вы получаете от вашего сервера.

Автор оригинала: EQuimper.

Я уверен, что вы уже знаете знаменитый инструмент Call Почтальон Отказ Это супер полезный инструмент для проверки вашего API и смотрит на ответ, которую вы получаете от вашего сервера. Но я вижу много людей, просто использующих его в качестве ручного тестера. Это не ошибается, но вы можете получить гораздо лучшую производительность, если вы используете некоторые функции почтальона.

Создайте свой первый простой тест

Во-первых, это простой контроллер в вашем приложении, где вы можете получить уникальный пост с идентификатором в качестве параметров.

/posts/controller.js.

import Post from './model';
/**
* GET BY ID
**/
export const fetchPostById = async (req, res) => {
  try {
    res.status(200).json({ post: await Post.findById(req.params.id) });
  } catch (e) {
    res.status(e.status).json({ error: true, message: e.message });
  }
};

/posts/routes.js.

import { Router } from 'express';
import * as PostController from './controller';

const routes = new Router();

routes.route('/posts/:id').get(PostController.fetchPostById);

export default routes;

Теперь время открыть почтальон. Влево ты посмотришь Маленькая папка с плюс знаком. Если вы нажмете туда, теперь вы можете создать коллекцию. Дайте небольшое имя для вашей коллекции. Для меня я использую Postman-Tuto Отказ С этой коллекцией мы заставляем нашу жизнь намного проще проверить маршрут уже создать.

Добавьте маршрут и Получить метод в основной области. Для меня я добавляю http://localhost: 3000/API/V1/посты/588CE463F4741431C918A04B Потому что я уже создал поддельный пост.

Теперь, когда я нажимаю, я получу это. Идеальный маршрут работает, а контроллер + модель выполняет свою работу.

Напишите свой первый тест почтальона

Если вы нажимаете на тест прямо под контейнером URL, вы собираетесь увидеть это Отказ Теперь время написать некоторые тесты. Во-первых, справа вы можете увидеть меню выбора с тестом, уже созданным по почтельоном. Мы можем выбрать один уже Код состояния: код 200 Отказ

Если вы нажмете, пожалуйста, теперь мы можем увидеть тестовый проход 1/1 Отказ

Теперь добавьте Орган ответа: Значение JSON Проверка снова в ваших правых фрагментах.

var jsonData = JSON.parse(responseBody);
tests["Post should have title of Title 1"] = jsonData.post.title === "Title 1";

Добавьте эту строку и теперь нажмите Отправить.

Это результат.

Добавить тест

Теперь пример полного теста на эти маршруты.

tests["GET By Id Posts - Status code is 200"] = responseCode.code === 200;

var jsonData = JSON.parse(responseBody);

tests["Post should have title of Title 1"] = jsonData.post.title === "Title 1";

tests["Post should have id of 588ce463f4741431c918a04b"] = jsonData.post._id === "588ce463f4741431c918a04b";

tests["Should have no error"] = jsonData.error === false;

Время сохранить и добавить новый

Теперь в левом верхнем углу вы можете увидеть большую кнопку сохранения. Нажмите на стрелку и Сохранить как Отказ Дайте название по этому маршруту. + Вам нужно добавить его в свою коллекцию.

Бегун

В левом верхнем углу вы можете увидеть кнопку Runner, если вы нажмете по нему, Postman открыть новое окно. Выберите свою коллекцию в раскрывающемся списке.

Если вы нажмете начать RUN, вы можете получить это.

Как вы можете видеть, я добавляю новый тест для показать, насколько удивительна этот инструмент может быть. Вы также можете импортировать свой тест и дать это другому Dev в вашей команде.

Последнее, что вы также можете экспортировать весь свой маршрут, если вы нажмете его в свою коллекцию. После другого DEV просто нужно импортировать его, и он получает весь свой маршрут. Теперь я начинаю экспортировать его в папку «Мой почтальон» внутри моего сервера, чтобы я мог импортировать его, если я удалю мою на моем графике.

Надеюсь, вам понравился этот маленький учебник, и вы узнаете что-то новое сегодня.

P.S Вам все еще нужно запустить тест в вашем контроллере и т. Д., Но с бегуном Postman + Test Etc, который дает вам гораздо больше подтверждения.

Ressources.