Учебники

MuleSoft — Тестирование с помощью MUnit

Мы понимаем, что модульное тестирование — это метод, с помощью которого отдельные модули исходного кода можно тестировать, чтобы определить, подходят ли они для использования или нет. Java-программисты могут использовать инфраструктуру Junit для написания тестовых случаев. Точно так же MuleSoft также имеет платформу под названием MUnit, которая позволяет нам писать автоматические тестовые случаи для наших API и интеграций. Он идеально подходит для непрерывной интеграции / развертывания среды. Одним из самых больших преимуществ инфраструктуры MUnit является то, что мы можем интегрировать ее с Maven и Surefire.

Особенности MUnit

Ниже приведены некоторые из очень полезных функций инфраструктуры тестирования Mule MUnit.

  • В среде MUnit мы можем создать наш тест Mule, используя код Mule, а также код Java.

  • Мы можем разрабатывать и тестировать наши приложения и API-интерфейсы Mule в графическом или XML-формате в Anypoint Studio.

  • MUnit позволяет нам легко интегрировать тестирование в существующий процесс CI / CD.

  • Он предоставляет автоматически сгенерированные тесты и отчеты о покрытии; следовательно ручная работа минимальна.

  • Мы также можем использовать локальные DB / FTP / почтовые серверы, чтобы сделать тестирование более портативным с помощью процесса CI.

  • Это позволяет нам включать или отключать тесты.

  • Мы также можем расширить инфраструктуру MUnit с помощью плагинов.

  • Это позволяет нам проверять вызовы обработчика сообщений.

  • С помощью инфраструктуры тестирования MUnit мы можем отключить соединители конечных точек, а также входящие конечные точки потока.

  • Мы можем проверить сообщения об ошибках с помощью трассировки стека Mule.

В среде MUnit мы можем создать наш тест Mule, используя код Mule, а также код Java.

Мы можем разрабатывать и тестировать наши приложения и API-интерфейсы Mule в графическом или XML-формате в Anypoint Studio.

MUnit позволяет нам легко интегрировать тестирование в существующий процесс CI / CD.

Он предоставляет автоматически сгенерированные тесты и отчеты о покрытии; следовательно ручная работа минимальна.

Мы также можем использовать локальные DB / FTP / почтовые серверы, чтобы сделать тестирование более портативным с помощью процесса CI.

Это позволяет нам включать или отключать тесты.

Мы также можем расширить инфраструктуру MUnit с помощью плагинов.

Это позволяет нам проверять вызовы обработчика сообщений.

С помощью инфраструктуры тестирования MUnit мы можем отключить соединители конечных точек, а также входящие конечные точки потока.

Мы можем проверить сообщения об ошибках с помощью трассировки стека Mule.

Последний выпуск Mule MUnit Testing Framework

MUnit 2.1.4 — это последняя версия среды тестирования Mule MUnit. Это требует следующих аппаратных и программных требований —

  • MS Windows 8+
  • Apple Mac OS X 10.10+
  • Linux
  • Java 8
  • Maven 3.3.3, 3.3.9, 3.5.4, 3.6.0

Он совместим с Mule 4.1.4 и Anypoint Studio 7.3.0.

MUnit и Anypoint Studio

Как уже говорилось, MUnit полностью интегрирован в студию Anypoint, и мы можем разрабатывать и тестировать наши приложения и API-интерфейсы Mule в графическом или XML-формате в студии Anypoint. Другими словами, мы можем использовать графический интерфейс Anypoint Studio для следующих действий:

  • Для создания и проектирования тестов MUnit
  • Для запуска наших тестов
  • Для просмотра результатов теста, а также отчета о покрытии
  • Для отладки тестов

Итак, давайте начнем обсуждать каждую задачу по очереди.

Создание и проектирование тестов MUnit

Как только вы запустите новый проект, он автоматически добавит новую папку, а именно src / test / munit в наш проект. Например, мы запустили новый проект Mule, а именно test_munit , вы можете увидеть на изображении ниже, он добавляет вышеупомянутую папку в нашем проекте.

Разработка тестов MUnit

Теперь, когда вы начали новый проект, есть два основных способа создания нового теста MUnit в Anypoint Studio —

  • Щелкнув правой кнопкой мыши по потоку — в этом методе нам нужно щелкнуть правой кнопкой мыши по определенному потоку и выбрать MUnit в раскрывающемся меню.

  • Использование мастера — в этом методе нам нужно использовать мастер для создания теста. Это позволяет нам создавать тест для любого потока в рабочей области.

Щелкнув правой кнопкой мыши по потоку — в этом методе нам нужно щелкнуть правой кнопкой мыши по определенному потоку и выбрать MUnit в раскрывающемся меню.

Использование мастера — в этом методе нам нужно использовать мастер для создания теста. Это позволяет нам создавать тест для любого потока в рабочей области.

Мы собираемся использовать способ «Щелкните правой кнопкой мыши по потоку», чтобы создать тест для конкретного потока.

Во-первых, нам нужно создать поток в рабочей области следующим образом

Тест MUnitFlow

Теперь щелкните правой кнопкой мыши по этому потоку и выберите MUnit, чтобы создать тест для этого потока, как показано ниже —

Выберите MUnit

Он создаст новый набор тестов с именем XML-файла, в котором находится поток. В этом случае test_munit-test-suite — это имя нового набора тестов, как показано ниже —

Выполнение потока

Ниже приведен редактор XML для вышеуказанного потока сообщений:

Редактор XML

Теперь мы можем добавить процессор сообщений MUnit в набор тестов, перетаскивая его из палитры Mule.

Подтверждение утверждения

Если вы хотите создать тест с помощью мастера, выполните File → New → MUnit, и он приведет вас к следующему набору тестов MUnit —

MUnit Test Suite

Настройка теста

В Mule 4 у нас есть два новых раздела, а именно MUnit и MUnit Tools , вместе имеющие весь процессор сообщений MUnit. Вы можете перетащить любой из обработчиков сообщений в тестовую область MUnit. Это показано на скриншоте ниже —

Настройка теста

Теперь, если вы хотите отредактировать конфигурацию для вашего костюма или теста в Anypoint Studio, то вам нужно выполнить следующие шаги —

Шаг 1

Перейдите в Package Explorer и щелкните правой кнопкой мыши по XML-файлу для вашего комплекта или теста. Затем выберите Свойства .

Шаг 2

Теперь в окне «Свойства» нам нужно нажать « Выполнить / Отладка» . После этого нажмите New .

Шаг 3

На последнем шаге нажмите MUnit в окне « Выбрать тип конфигурации» и нажмите « ОК» .

Изменить конфигурацию запуска

Выполнение теста

Мы можем запустить тестовый набор, а также тест. Сначала мы увидим, как запустить набор тестов.

Запуск набора тестов

Для запуска набора тестов щелкните правой кнопкой мыши на пустой части Mule Canvas, где находится ваш набор тестов. Откроется выпадающее меню. Теперь нажмите на Run MUnit suite, как показано ниже —

Запуск набора тестов

Позже мы можем увидеть вывод в консоли.

Выполнение теста

Чтобы запустить конкретный тест, нам нужно выбрать конкретный тест и щелкнуть по нему правой кнопкой мыши. Мы получим такое же выпадающее меню, которое мы получили при запуске набора тестов. Теперь нажмите на опцию Run MUnit Test, как показано ниже —

Выполнение теста

Там после выхода видно в консоли.

Просмотр и анализ результатов теста

Anypoint studio отображает результаты теста MUnit на вкладке MUnit левой панели проводника. Вы можете найти успешные тесты в зеленом цвете и проваленные тесты в красном, как показано ниже —

Создать отчет

Мы можем проанализировать результаты нашего теста, просмотрев отчет о покрытии. Основная особенность Coverage Report — предоставить метрику того, сколько приложений Mule было успешно выполнено набором тестов MUnit. Охват MUnit в основном основан на количестве выполненных обработчиков сообщений MUnit. Отчет о покрытии MUnit предоставляет метрику для следующего:

  • Общий охват приложения
  • Ресурсный охват
  • Поток покрытия

Чтобы получить отчет о покрытии, нам нужно нажать «Создать отчет» на вкладке MUnit, как показано ниже —

Анализ результатов теста

Отладка теста

Мы можем отладить тестовый набор, а также тест. Сначала мы увидим, как отлаживать набор тестов.

Отладка тестового набора

Для отладки набора тестов щелкните правой кнопкой мыши пустую часть Mule Canvas, где находится ваш набор тестов. Откроется выпадающее меню. Теперь нажмите на Debug MUnit Suite, как показано на рисунке ниже —

Отладка теста

Затем мы можем увидеть вывод в консоли.

Отладка теста

Чтобы отладить конкретный тест, нам нужно выбрать конкретный тест и щелкнуть по нему правой кнопкой мыши. Мы получим такое же выпадающее меню, которое мы получили при отладке тестового набора. Теперь нажмите на опцию Debug MUnit Test . Это показано на снимке экрана ниже.