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.
Последний выпуск платформы тестирования Mule MUnit
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 studio, и мы можем проектировать и тестировать наши приложения и API Mule графически или в XML в Anypoint studio. Другими словами, мы можем использовать графический интерфейс Anypoint Studio для следующих действий:
- Для создания и проектирования тестов MUnit
- Для запуска наших тестов
- Для просмотра результатов тестирования, а также отчета о покрытии
- Для отладки тестов
Итак, приступим к обсуждению каждой задачи по очереди.
Создание и проектирование тестов MUnit
Как только вы начнете новый проект, он автоматически добавит новую папку, а именно src/test/munitк нашему проекту. Например, мы начали новый проект Mule, а именноtest_munit, вы можете видеть на изображении ниже, он добавляет вышеупомянутую папку в наш проект.
Теперь, когда вы начали новый проект, есть два основных способа создать новый тест MUnit в Anypoint Studio:
By Right-Clicking the Flow - В этом методе нам нужно щелкнуть правой кнопкой мыши конкретный поток и выбрать MUnit из раскрывающегося меню.
By Using the Wizard- В этом методе нам нужно использовать мастер для создания теста. Это позволяет нам создавать тест для любого потока в рабочей области.
Мы собираемся использовать способ «Щелкните поток правой кнопкой мыши», чтобы создать тест для конкретного потока.
Во-первых, нам нужно создать поток в рабочей области следующим образом:
Теперь щелкните правой кнопкой мыши этот поток и выберите MUnit, чтобы создать тест для этого потока, как показано ниже -
Он создаст новый набор тестов, названный в честь XML-файла, в котором находится поток. В этом случае,test_munit-test-suite это имя нового набора тестов, как показано ниже -
Ниже приведен редактор XML для вышеуказанного потока сообщений.
Теперь мы можем добавить MUnit обработчик сообщений в набор тестов, перетащив его из палитры Mule.
Если вы хотите создать тест с помощью мастера, выполните File → New → MUnit и это приведет вас к следующему набору тестирования MUnit -
Настройка теста
В Mule 4 у нас есть два новых раздела, а именно MUnit и MUnit Tools, совокупно имея весь процессор сообщений MUnit. Вы можете перетащить любой обработчик сообщений в область тестирования MUnit. Это показано на скриншоте ниже -
Теперь, если вы хотите отредактировать конфигурацию своего костюма или теста в Anypoint Studio, вам необходимо выполнить следующие шаги:
Step 1
Перейти к Package Explorer и щелкните правой кнопкой мыши .xml fileдля вашего набора или теста. Затем выберитеProperties.
Step 2
Теперь в окне свойств нам нужно нажать Run/Debug Settingс. После этого нажмитеNew.
Step 3
На последнем шаге щелкните MUnit под Select Configuration Type окно, а затем щелкните OK.
Запуск теста
Мы можем запустить как набор тестов, так и тест. Сначала мы увидим, как запустить набор тестов.
Запуск набора тестов
Для запуска набора тестов щелкните правой кнопкой мыши пустую часть холста Mule, где находится ваш набор тестов. Откроется раскрывающееся меню. Теперь нажмите наRun MUnit suite как показано ниже -
Позже мы можем увидеть результат в консоли.
Проведение теста
Чтобы запустить конкретный тест, нам нужно выбрать конкретный тест и щелкнуть по нему правой кнопкой мыши. Мы получим то же раскрывающееся меню, что и при запуске набора тестов. Теперь нажмите наRun MUnit Test вариант, как показано ниже -
Там после вывод можно увидеть в консоли.
Просмотр и анализ результатов теста
Anypoint studio отображает результат теста MUnit в MUnit tabна левой панели проводника. Вы можете найти успешные тесты зеленым цветом и неудачные тесты красным, как показано ниже -
Мы можем проанализировать результат нашего теста, просмотрев отчет о покрытии. Основная особенность отчета о покрытии - предоставить показатель того, какая часть приложения Mule была успешно выполнена с помощью набора тестов MUnit. Охват MUnit в основном основан на количестве запущенных процессоров сообщений MUnit. Отчет о покрытии MUnit предоставляет метрики для следующего:
- Общий охват приложения
- Покрытие ресурсов
- Покрытие потока
Чтобы получить отчет о покрытии, нам нужно щелкнуть «Создать отчет» на вкладке MUnit, как показано ниже -
Отладка теста
Мы можем отлаживать набор тестов, а также тест. Сначала мы увидим, как отлаживать набор тестов.
Отладка набора тестов
Для отладки набора тестов щелкните правой кнопкой мыши пустую часть холста Mule, где находится ваш набор тестов. Откроется раскрывающееся меню. Теперь нажмите наDebug MUnit Suite как показано на изображении ниже -
Затем мы можем увидеть результат в консоли.
Отладка теста
Чтобы отладить конкретный тест, нам нужно выбрать конкретный тест и щелкнуть по нему правой кнопкой мыши. Мы получим то же выпадающее меню, что и при отладке набора тестов. Теперь нажмите наDebug MUnit Testвариант. Это показано на снимке экрана ниже.