重构时的PHP代码验证

zid*_*dar 2 php refactoring

作为一个习惯于静态类型的开发人员,我通常让编译器告诉我代码是否正确,当然排除了逻辑缺陷.但是当重构PHP时,我发现很难知道我的代码是正确的.

某些方法或成员似乎总是有一些挥之不去的引用,这些方法或成员会被破坏并且直到运行时才显示出来.即使在Zend Studio中使用有限的重构支持,事情也会以某种方式被破坏.

由于语言本身的动态性,我理解这是一个难题.但有没有任何工具可以静态验证PHP代码,以便我知道它在运行之前是可以的吗?我不想再看到"Undefined property"错误消息.

vir*_*tor 5

编写代码测试(http://www.phpunit.de/),设置持续集成服务器,运行UI测试(http://pear.php.net/package/Testing_Selenium/).通过足够的测试,您可以在提交错误代码后直接找到问题.只需保持测试代码覆盖率高.

这是单元测试的要点之一 - 您可以在不实际破坏代码的情况下重构代码,因为您在每次更改后都会检查所有功能.