Когда я должен объединить мои файлы Cobertura ser, а не использовать их повторно и добавить в один? - PullRequest
2 голосов
/ 06 декабря 2011

Я выполняю несколько процессов для покрытия кода. Например, модульные тесты, ручные тесты и т. Д. Мне нужен обзор охвата всех способов использования кода.

Почему бы просто не указывать один и тот же файл .ser для Cobertura каждый раз? Cobertura добавит новые данные в файл ser .

С другой стороны, при каких обстоятельствах я должен использовать отдельные файлы .ser , а затем выполнить команду cobertura-merge ?

1 Ответ

1 голос
/ 01 октября 2013

Одним из возможных примеров является то, что ваша кодовая база фрагментируется, компилируется и упаковывается независимо, и вы запускаете свои юнит-тесты для каждой части независимо.Затем вы можете объединить ваши .ser файлы, чтобы получить полную картину для вашего приложения.

Если вы используете «общие» модули для нескольких приложений / двоичных файлов, вы также можете получить более точную картину фактического покрытия каждого приложения.приложения, в частности, если это важно для вас.

Другой сценарий - это ситуация, когда вы запускаете модульные тесты на своей кодовой базе и собираете файл .ser, затем вы также применяете свои двоичные файлы и запускаете автоматизированное тестирование, кака также функциональное (ручное) тестирование, каждый раз собирая ваши .ser файлы.Если вы генерируете отчеты независимо, вы не можете просто открыть электронную таблицу и сложить номера покрытия, потому что, вероятно, многие пути покрытия были идентичны во всех сценариях.

Только при объединении этих файлов .ser вы получитеточное представление о том, какие пути были выполнены, а какие не были использованы ни в одном из ваших сценариев тестирования.


Редактировать : я понимаю, что получил частичный ответ - мои извинения.Вы спросили

Почему бы просто не указывать один и тот же файл .ser для Cobertura каждый раз?Cobertura добавит новые данные в файл ser.

Однако я чувствую, что это вопрос личных предпочтений.Прежде всего, чтобы иметь возможность «повторно» использовать файл .ser в последовательных тестовых сценариях, вам нужен своего рода тестовый конвейер без внешних зависимостей.Если вы выполнили это условие, то я не буду возражать против того, чтобы сделать это таким образом, если это более практично для вас.

Лично я предпочитаю разбить его на отдельные файлы .ser и объединить их позже,С одной стороны, если один шаг не удался, и мне нужно перезапустить его, мне не нужно об этом беспокоиться.Кроме того, если вас когда-либо интересует специфика каждого шага тестирования, вы также можете извлечь для него отчет, тогда как в своем сценарии конвейера это невозможно.Все еще не очень убедительно.

...