Как получить покрытие кода с помощью теста postman

У нас есть службы REST, созданные в RestEasy и работающие на сервере wildfly. Мы тестируем тестовые примеры Postman для тестирования URL-адресов Rest.

Есть ли способ получить покрытие кода для служб при выполнении набора тестов postman?

Мы используем SonarQube для анализа охвата кода.

Ответы

Ответ 1

Я думаю, нет, здесь был задан аналогичный вопрос: создать отчет о покрытии кода сонара из тестов Postman

Оригинальный плакат прокомментировал дальше:

На самом деле, после небольшого поиска в Google, мы могли использовать удаленный агент Jacoco, подключенный к серверу приложений Java. Мы попытаемся запустить цели jacoco maven до и после выполнения тестов, чтобы создать отчет о покрытии jacoco. См.: ссылка. Я обновлю сообщение, если у нас будет некоторый прогресс.

Кроме того, у нового человека, похоже, есть атрификация: https://github.com/postmanlabs/newman/issues/408

Хотя это может помочь

Ответ 2

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

Вот ссылка на демонстрационный пример, который работает с кодом: https://github.com/intuit/karate/tree/master/karate-demo#code-coverage-using-jacoco. Поскольку каратэ является реализацией JVM, это просто, и я рекомендую вам держать тесты Karate в одном модуле Maven (или эквивалентном) для самого простого варианта. В противном случае это возможно, но только сложнее - и вам нужно будет играть с профилем Maven и т.д. Или выполнять какую-то гимнастику синхронизации инструментов.

Я думаю, если у вас уже есть много тестов в Postman, совет здесь может быть непрактичным. Но я отправляю этот ответ на благо других, которые будут сталкиваться с этим вопросом в будущем.

Если вам повезет, вы можете быстро перенести свои тесты в Karate с помощью экспериментального конвертера, встроенного в интерфейс пользователя: https://github.com/intuit/karate/wiki/Karate-UI#postman-import

Возможно, вы можете внести свой вклад в создание этой функции.

Ответ 3

Пока еще не реализована технология, обеспечивающая покрытие кода для тестов postman.

В итоге мы выбрали успокоиться и начали заменять все тесты postman.