Есть ли веские доказательства ROI модульного тестирования? - PullRequest
118 голосов
/ 26 октября 2008

Модульное тестирование звучит для меня замечательно, но я не уверен, что мне стоило бы потратить какое-то время на его изучение, если я не смогу убедить других в том, что это имеет существенное значение. Я должен убедить других программистов и, что более важно, счетчики бинов в управлении, что все дополнительное время, потраченное на изучение структуры тестирования, написание тестов, их обновление и т. Д., Окупится, а затем и некоторые.

Какие доказательства есть? Кто-нибудь на самом деле разрабатывал одно и то же программное обеспечение с двумя отдельными группами, одна из которых использовала модульное тестирование, а другая нет, и сравнивал результаты? Я сомневаюсь. Должен ли я просто оправдать это словами: «Посмотри в Интернете, все об этом говорят, так что, должно быть, это правильно»?

Где убедительные доказательства, которые убедят мирян в том, что юнит-тестирование стоит усилий?

Ответы [ 11 ]

0 голосов
/ 10 февраля 2009

У меня есть один набор данных для этого - из опыта, который продал меня на модульных тестах.

Много лун назад я был молодым выпускником, работавшим над большим проектом VB6, и мне приходилось писать большой объем кода хранимых процедур. Из подсистемы, которую я писал, она составляла около 1/4 всей базы кода - около 13 000 LOC из 50K или около того.

Я написал набор модульных тестов для хранимых процедур, но модульное тестирование кода пользовательского интерфейса VB6 на самом деле невозможно без таких инструментов, как Rational Robot; по крайней мере, тогда не было.

Статистические данные из QA на части были о том, что во всей подсистеме возникло около 40 или 50 дефектов, из которых два возникли из хранимых процедур. Это один дефект на 6500 строк кода против 1 на 1000-1200 или около того по всему фрагменту. Помните также, что около 2/3 кода VB6 представляло собой стандартный код для обработки ошибок и регистрации, идентичный для всех процедур.

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

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...