作为一个习惯于静态类型的开发人员,我通常会让编译器告诉我代码是否正确,当然不包括逻辑缺陷。但是在重构PHP时,我发现很难知道我的代码是正确的。
似乎总有一些延迟引用某个方法或成员某个地方被破坏并且直到运行时才显示。即使在Zend Studio中使用有限的重构支持,事情也会以某种方式被破坏。
由于语言本身的动态性,我理解这是一个难题。但有没有任何工具可以静态验证PHP代码,以便我知道它在运行之前是可以的吗?我不想再看到“Undefined property”错误消息。
答案 0 :(得分:5)
为您的代码编写测试(http://www.phpunit.de/),设置持续集成服务器,运行UI测试(http://pear.php.net/package/Testing_Selenium/)。通过足够的测试,您可以在提交错误代码后直接找到问题。只需保持测试代码覆盖率很高。
这是单元测试的主要要点之一 - 您可以在不实际破坏代码的情况下重构代码,因为每次更改后都会检查所有功能。
答案 1 :(得分:2)
答案 2 :(得分:0)
单元测试。我是Testilence
的作者