Как получить покрытие кода для веб-приложения? - PullRequest
0 голосов
/ 30 апреля 2020

У меня есть репо A, где у нас есть код приложения, и репо B, где у нас есть код Selenium. Теперь нам нужно получить покрытие кода.

Любые возможные решения?

1 Ответ

0 голосов
/ 06 мая 2020

Вы пытаетесь вычислить покрытие кода из системных тестов. Покрытие кода, измеряемое такими инструментами, как jacoco, обычно выполняется в модульных тестах как часть сборки исходного кода. То есть он генерируется как часть фазы 'test' или 'интеграционного тестирования' той же сборки maven, которая выполняла фазу 'compile'. Jacoco очень прост в использовании в этом сценарии.

Тесты Selenium - это более системный уровень тестирования, поскольку они работают на работающей системе. Инструментарий исходного кода для файлов .CLASS в этой области сложнее, поэтому вам придется прыгать через мучительные скачки, чтобы получить результаты jacoco из селена.

Кроме того, погоня за покрытием кода в Selenium - плохая идея. Если вы хотите убедиться, что все ветви покрыты, вы должны написать кучу тестов для проверки перестановок. Вы хотите облегченную структуру, то есть модульное тестирование, чтобы проверить перестановки. Использование тяжелого фреймворка, такого как селен, будет означать, что вы тратите МНОГО времени на вращение контейнеров вверх и вниз. Это не значит, что Селен это плохо. Вы должны выполнить охват измеренного кода на земле модульного тестирования, а затем продемонстрировать, что эти модульные тесты имеют смысл с помощью нескольких системных тестов. Селен (неизмеренный) дает достоверность того, что утверждение типа «у нас есть модульные тесты с охватом кода 80%» указывает на то, что «наша система имеет надежные тесты»

...