Насколько безопасно использовать команды рефакторинга PhpStorm

У меня есть некоторый PHP-код, который не имеет хорошего покрытия тестов и не легко тестируется в своем текущем состоянии. Если я использую команды из рефакторинг меню PhpStorm, и не вносите никаких других изменений, насколько я могу быть уверен, что это не изменит поведение моего приложения?

Насколько безопасны другие инструменты автоматического рефакторинга?

Насколько я понимаю, эти инструменты будут применять статический анализ и могут вызывать изменения в поведении только в том случае, если приложение выполняет что-то очень странное, в зависимости от вывода debug_backtrace ()

0

Решение

(Чрезмерно) простой ответ — это не лучше и не хуже, чем рефакторинг вручную.

Если у вас есть хорошие тесты, тогда это безопасно. Если нет, то это не так.

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

Раньше меня укусили инструменты рефакторинга PhpStorms странными способами, что даже привело к нарушению синтаксиса. Но это было очень давно, инструменты пошли дальше, и всегда легко вернуться на шаг назад, если вы методично вносите изменения в свой SCM.

-1

Другие решения

Других решений пока нет …