Скорость выполнения модульных тестов (сколько тестов в секунду?) - PullRequest
20 голосов
/ 14 августа 2008

На какую скорость выполнения вы рассчитываете с помощью своих модульных тестов (# тест в секунду)? Как долго это слишком долго для отдельного модульного теста?

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

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

Примечание. Интеграционные тесты - это, очевидно, другое дело. Мы строго говорим о юнит-тестах, которые нужно запускать как можно чаще.


Сводка ответов: Спасибо за отличные ответы. Большинство советов, как представляется, не беспокоиться о скорости - сосредоточиться на качестве и просто выборочно запустить их, если они слишком медленные. Ответы с конкретными номерами включают в себя нацеленность на <10 мс до 0,5 и 1 секунду на тест или просто выдерживают весь набор обычно выполняемых тестов менее 10 секунд. </p>

Не уверен, правильно ли помечать один как «принятый ответ», когда все они полезны:)

Ответы [ 11 ]

0 голосов
/ 14 августа 2008

Я оцениваю свои юнит-тесты по каждому тесту, а не по # тестам в секунду. Скорость, к которой я стремлюсь, составляет 500 мс или меньше. Если он выше этого, я посмотрю на тест, чтобы выяснить, почему он так долго.

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

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