GC будет не , вызов располагает. Это может называть Ваш финализатор, но даже это не гарантируется при всех обстоятельствах.
Посмотрите этот статья для обсуждения лучшего способа обработать это.
Это мое общее правило (я обычно развертываю для нетехнических пользователей). Однако у меня есть исключение, это служебная программа для программирования, которая тестируется на ~ 130 тестовых скриптах. Поскольку тестовые сценарии служат примерами, я развертываю их вместе с производственной версией, и, следовательно, они улучшают существующую документацию.
Развертывание тестов с открытым исходным кодом определенно стоит того. Это позволяет людям играть, изменять и отправлять исправления, в то же время имея возможность запускать успешно пройденные тесты, чтобы разрешить выпуск исходного артефакта.
Да конечно! Модульные тесты выполняются для всех конфигураций сборки.
Модульные тесты всегда остаются нетронутыми, но это не означает, что поставляемые сборки зависят от чего-либо, относящегося к тестам. Тесты всегда пишутся в параллельной сборке (в той же среде сборки), которая затем тестирует производственную сборку. Параллельная сборка не поставляется, так как содержит только тесты.
Да и Да, поведение приложения может отличаться в зависимости от выпуска и отладочной сборки, поэтому как часть процесса выпуска сборка выпуска должна пройти все свои модульные тесты.
Зависит от проекта. Да на номер 1. Следуя принципу, что все должно быть проверено в системе контроля исходного кода, и новый разработчик должен легко начать работать. Сделайте их частью кодовой базы. Новые люди могут проверить и запустить тесты.
Развернуты ли они в производственной среде - это другой вопрос. Я не работал над проектом, который нуждался в них . Модель развертывания Rails (как правило) - это просто проверка всего проекта на производственной машине, так что да, они есть. У проектов Java / Maven есть целый этап сборки / упаковки, и, как правило, модульные тесты могут - и удаляются - при сборке окончательного файла .war.
В любом случае, вы не ожидаете, что они побегут. В сегодняшних условиях это не так. Не имеет значения, находятся ли они там - память и диск настолько дешевы, что это не проблема. Я слышал аргумент, что вам не нужен тестовый код на производственном сервере, чтобы не было риска его запуска, но я не слышал о сценарии, когда это действительно могло бы произойти.