
Привет, друзья! В современном мире разработки программного обеспечения микросервисы стали настоящим хитом, словно умные кубики Лего, которые собираются вместе в интеллектуальное приложение. Но стоит ли бояться тестирования этих микросервисов? Давайте вместе разберемся, как освоить их проверку!
Аналогия с кубиками Лего. Для начала давайте представим приложение как огромную модель из кубиков Лего, а микросервисы — как сами эти кубики. Они могут работать независимо, но если их соединить, получится настоящее волшебное здание. Но как узнать, какой вклад вносит каждый «кубик»?
Пример из реальной жизни: интернет-магазин микросервисов. Допустим, у нас есть интернет-магазин. В нем действуют три микросервиса: «Магазин одежды», «Корзина покупок» и «Оплата». Каждый микросервис — это свой собственный «кубик Лего».
Важные ключи к пониманию
- Что такое API? API — это язык, на котором программы общаются друг с другом. Возможно, вы понимаете его как «словарь», который говорит программам, какими командами они могут обмениваться. Для микросервисов это как описание каждого «кубика», где они объявляют, как взаимодействовать. Например, если у нас есть микросервис для корзины покупок и другой для оформления заказа, их API определяет, как передавать информацию о товарах из корзины в заказ. 
- Простое тестирование «на практике». Давайте представим, что мы играем с кубиками Лего. Каждый кубик — это микросервис. Разбирая и соединяя их, мы учимся понимать, как они функционируют вместе. Применительно к тестированию, подход «на практике» означает, что мы проверяем, как микросервисы взаимодействуют друг с другом. По сути, мы анализируем, как кубики Лего соединяются так, как ожидается. 
- Как убедиться в правильной работе? Здесь ключевое — провести проверку каждого «кубика» по отдельности и в совокупности. Начнем с индивидуальной проверки каждого микросервиса: удостоверимся, что каждый «кубик» функционирует корректно. Затем проверим их взаимодействие. Представьте себе, что вы строите сложную модель из Лего. Если каждый «кубик» плотно соединен с другими, и конструкция надежна, значит, всё в порядке. Точно так же, если все микросервисы гармонично работают и «здание» функционирует, это означает, что всё в порядке. 
Примерно так мы можем убедиться, что «Магазин одежды» правильно отображает товары.
- Визуальная проверка. Просто зайдите на сайт магазина. Если вы видите разнообразные товары с названиями, ценами и описаниями, то «Магазин одежды» выполняет свою функцию. 
- Тест поиска. Попробуйте воспользоваться поиском на сайте. Если система быстро находит и отображает результаты для вашего запроса, то «Магазин одежды» правильно обрабатывает поиск. 
- Загрузка картинок. Проверьте, что изображения товаров загружаются вместе с описаниями и ценами. Если вы видите фотографии товаров рядом с информацией, то всё в порядке. 
Таким образом, путем проверки отображения товаров, работы поиска и загрузки изображений вы можете убедиться, что «Магазин одежды» функционирует как задумано.
Применение методов в приложении «Яндекс Go»
Представьте, что у вас есть приложение для заказа такси, аналогичное «Яндекс Go». Это приложение состоит из нескольких микросервисов, каждый из которых отвечает за свой участок функциональности.
- «Мониторинг водителей». Этот микросервис следит за местоположением водителей и их оценками. Как проверить его функциональность? 
- Тестовый заказ. Сделайте заказ и узнайте, сколько времени потребуется водителю для прибытия. Если микросервис точно определяет расстояния и время, то он работает правильно. 
- Отмена заказа. Закажите поездку, а затем отмените ее. Проверьте, как быстро микросервис реагирует на отмену и обновляет статус. 
- «Платежная система». Этот микросервис управляет оплатой поездок. Как убедиться, что он функционирует корректно? 
- Тестовый платеж. Сделайте тестовую оплату за небольшую поездку и убедитесь, что средства списались правильно. 
- История поездок. Проверьте, что микросервис сохраняет историю поездок и суммы платежей корректно. 
- «Карта и маршруты». Этот микросервис отображает карту и рассчитывает маршруты. Как проверить его работу? 
- Выбор маршрута. Задайте начальную и конечную точки, затем выберите маршрут. Проверьте, что система корректно строит варианты маршрутов. 
- Изменение точек. Измените точки отправления или прибытия во время заказа и убедитесь, что «Карта и маршруты» быстро адаптируются. 
Секреты успешного тестирования
- Играйтесь с интерфейсами. Представьте, что микросервисы как игрушечные кубики Лего. Это поможет вам лучше понять их взаимодействие. 
- Общение с разработчиками. Разговаривайте с теми, кто создал микросервисы. Их опыт и знания — настоящее сокровище. 
Заключение
Тестирование микросервисов, по сути, это как сборка сложной пазловой модели. Используя подходы, описанные выше, вы сможете гарантировать, что все «кубики Лего» в вашем приложении соединились в надежную и удобную структуру. Так что, друзья, тестирование микросервисов — это несложно, как игра в Лего. Освоив это и применяя советы, вы сможете построить качественное приложение!
Комментарии (7)
 - Batalmv30.08.2023 08:26+1- Такое ощущение, что автора попросили рассказать о тестировании в школе ... ну и сюда выложил, чтобы не пропадать добру :) 
 - mitrichlab30.08.2023 08:26- Потом они приходят на собеседование. В резюме Яндекс практикум и публикации на Хабре  - ArtemOdintsov30.08.2023 08:26- Ну пусть приходит, согласен, что стать ни о чем. Тебе холодно или жарка от того , что у него в резюме статья? 
 
 
           
 

azzas
Очередные выдержки из теории тестирования по верхам. Где в этой статье контент? Где best practice? Где инструменты?
Ощущение что статья от "тестировщика", который только что закончил курсы на каком-нибудь SkillFactory или где то еще, и решившим поделиться новоприобретенной мудростью.
iBljad
Да если бы тут хоть какая-то теория была кроме 15 упоминаний кубиков...