Инструмент, используемый для получения метрик кода в тестовых шаблонах xUnit?

Я читаю xUnit Test Patterns Джерарда Месароса.

На одной из страниц он ссылается на некоторые показатели программного обеспечения:

Хотя необходимость обертывать строки, чтобы они составляли 65 символов, делает этот код даже длиннее, чем он есть на самом деле, он по-прежнему является излишне длинным. Он содержит 25 исполняемых операторов, включая инициализированные объявления, 6 строк управляющих операторов, 4 встроенных комментария и 2 строки для объявления метода тестирования - всего 37 строк развернутого исходного кода.

Если не считать подсчета утверждений для нахождения этих показателей, есть ли у кого-нибудь представление о том, использовал ли он определенный инструмент для расчета показателей?

(Если у вас есть предложения по инструментам, которые будут подсчитывать аналогичные показатели, я ищу тот, который работает на Java, Javascript и C ++)

Спасибо!


person leeand00    schedule 15.06.2010    source источник
comment
Я правда не думаю, что он все это вручную считал, это было бы непрограммируемо.   -  person leeand00    schedule 15.06.2010


Ответы (1)


Извините, что разочаровал вас, но я посчитал вручную (ну, на глаз). Это всего 25 строк кода! Я просто просмотрел и подсчитал точки с запятой и вычитал строки, которые не были фактически выполнены (например, объявления неинициализированных переменных).

Дело не в том, сколько там строк кода, а в том, сколько меньше строк кода вам нужно написать (один раз) и прочитать / понять / изменить (много раз).

Джерард

person Gerard Meszaros    schedule 15.06.2010
comment
Ладно, я знал, что количество строк кода не имеет значения; но я не знал, имеет ли значение количество различных типов операторов: исполняемые операторы, управляющие операторы или нет. Возможно, я слишком много думаю об этом. Кстати, добро пожаловать в Stack Overflow; мы рады видеть вас здесь! - person leeand00; 15.06.2010
comment
Имеют ли значение такие метрики кода? Я видел пару проектов, в которых подсчитывают такие вещи (вместо строк кода). - person leeand00; 15.06.2010
comment
(именно это и натолкнуло меня на мысль искать такой инструмент в первую очередь) - person leeand00; 15.06.2010