Существуют ли инструменты покрытия кода, которые могут рассказать мне только о коде, который я написал во время моего последнего спринта? - PullRequest
3 голосов
/ 03 февраля 2010

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

  • Какой охват кода мы имели как команда для кода, написанного во время нашего последнего спринта?
  • Насколько покрыт новый код разработчиком?

Кто-нибудь делал что-то подобное раньше? Какие инструменты доступны? В частности, я работаю на Java и интересуюсь бесплатными или коммерческими решениями.

Ответы [ 2 ]

0 голосов
/ 09 марта 2010

У вас две проблемы:

1) Каков охват кода, который у меня сейчас есть?2) Каков охват по сравнению с тем, что было у меня раньше?

Я думаю, вам нужны три инструмента:

a) для расчета покрытия вашего приложения в этот момент,

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

c) что-то, чтобы выбрать изменяющиеся данные покрытия.

Вы можетеа) получить из ряда инструментов покрытия тестов Java, но вы хотите получить его в форме, которую можно обработать на шаге в). Инструмент тестирования Java SD предоставляет эти данные в удобной для использования форме.Об охвате теста сообщается в XML с данными номера строки, так что вы можете легко создать инструмент для извлечения того, что вы хотите.

b) Любой инструмент сравнения сделает выявление различий в файлах при условии, что файлы из предыдущеговерсия и из этой версии выстраиваются один в один.В противном случае вы можете просто предположить, что данные тестового покрытия совершенно разные: -} Однако вы хотите получить наименьшее различие, которое вы можете получить;см. SD Java Smart Differencer Tool для инструмента, который часто вычисляет гораздо меньшие дельты, чем обычный diff.Вывод Smart Differencer является машиночитаемым.

c) У меня нет готового ответа на этот вопрос, но сценарий Perl, объединяющий информацию из a) и b), вероятно, выполниттрюк.Что вы хотите сообщить, так это то, что для каждой явной дельты, идентифицированной инструментом diff, что такое данные покрытия, и для всего кода, не измененного в соответствии с инструментом diff, является ли новое покрытие меньше старого покрытия.

0 голосов
/ 03 февраля 2010

Посмотри в сонар.Можно сказать о релизах за спринт.

...