Grails, Hudson и Cobertura, какие тесты охватывают мой код? - PullRequest
1 голос
/ 10 мая 2011

Я только начал работать над существующим проектом grails, в котором написано много кода, а тесты не покрывают много.В проекте используется Hudson с плагином Cobertura, что приятно.По мере того, как я разбираюсь с вещами, я замечаю, что, хотя для кода не написаны специальные тестовые классы, это рассматривается.Есть ли простой способ увидеть, какие тесты охватывают код?Это сэкономило бы мне немного времени, если бы я смог узнать эту информацию.Спасибо

1 Ответ

0 голосов
/ 11 мая 2011

То, что вы хотите сделать, это собрать данные о покрытии тестов для каждого теста. Затем, когда какой-то блок кода не выполняется тестом, вы можете отследить его до теста.

Вам нужен тестовый инструмент покрытия, который сделает это; AFAIK, это просто организовать. Просто запустите один тест и соберите данные о тестовом покрытии.

Тем не менее, большинство людей также хотят знать, каков охват приложения, предоставленного всем тестам? Вы можете запустить тесты дважды, один раз, чтобы получить информацию о том, что делает этот тест, а затем весь пакет, чтобы получить информацию о том, что делает этот пакет. Некоторые инструменты ( включая наши ) позволят вам объединить покрытие из отдельных тестов, чтобы получить покрытие для набора, поэтому вам не придется запускать их дважды.

У наших инструментов есть одно приятное дополнение: если вы собираете покрытие для конкретного теста, когда вы изменяете код, инструмент может определить, какие отдельные тесты необходимо выполнить повторно. Для этого вам потребуется немного простых сценариев, чтобы сравнить результаты измерительных данных для измененных источников с результатами для каждого теста.

...