Очень понравились по этой теме две утилитки:

Первая - очень удобна для анализа покрытия тестами всего приложения, вторая - удобна при написании тестов.

Cobertura

Подробнее узнать о данной утилите, можно на странице http://cobertura.sourceforge.net/.

Для того, чтобы произвести анализ покрытия тестами кода вашего приложения, pom.xml должны содержаться следующие строки:

  <reporting>
    <plugins>
      <plugin>
        <groupId>org.codehaus.mojo</groupId>
        <artifactId>cobertura-maven-plugin</artifactId>
        <configuration>
          <formats>
            <format>html</format>
            <format>xml</format>
          </formats>
        </configuration>
      </plugin>
    </plugins>
  </reporting>

Теперь, чтобы получить отчет, необходимо выполнить команду mvn cobertura:cobertura. После выполнения тестов, в папке target/site/cobertura/ будет находится отчет о покрытии кода тестами. Пример этого отчета можно посмотреть здесь

Это плагин для Eclipse. Update-site для eclipse: http://update.eclemma.org/

Его удобство заключается в том, проверка покрытия тестами кода осущетвляется практически теми же действиями, что и запуск самого теста из среды Eclipse. Выполнив для теста команду Coverage As->JUnitTest, и затем открыв тестируемый класс, вы увидите протестированные зоны (выделены зеленым цветом) и непротестированные (красные). Теперь вам осталось только добавить в тест необходимые проверки…

С помощью этого плагина вы также можете определить общую степень покрытия тестами кода вашего приложения. Для этого необходимо в диалоге “Coverage”, который можно вызвать с главного Toolbar, установить радио-переключатель “Run all tests in the selected project…” Правда я заметил недостаток, что для всего проекта считается покрытие тестами самих тестов что искажает результаты практически в 2 раза. Если смотреть покрытие отдельно на пакет с тестами и классами, то результат будет практически такой же, как и при использовании

Связанные записи