Как получить покрытие кода с помощью теста 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.