如何在同一台服务器上为多个 PHP 版本设置自动单元测试(我使用 phpUnit)?或者如果不可能的话,有哪些负担得起的解决方案?
我将我的代码部署到具有不同设置的多个客户服务器。因此,能够根据客户设置设置服务器配置以测试我的代码将是一个主要好处。但是我买不起每个客户的机器,我也没有空间放置机器;)
如何在同一台服务器上为多个 PHP 版本设置自动单元测试(我使用 phpUnit)?或者如果不可能的话,有哪些负担得起的解决方案?
我将我的代码部署到具有不同设置的多个客户服务器。因此,能够根据客户设置设置服务器配置以测试我的代码将是一个主要好处。但是我买不起每个客户的机器,我也没有空间放置机器;)
您可以同时安装多个 PHP 版本,也可以为每个客户使用一个虚拟机。
我编写了phpfarm来实现这个目标:在许多 PHP 版本上运行 PEAR 包的单元测试。
它允许您在您的机器上轻松安装多个版本的 PHP,设置默认版本,并为每个版本提供 PEAR/Pyrus 安装。使用该设置也可以安装扩展。
然后你可以运行你的单元测试
$ php-5.3.23 /path/to/phpunit .
或者
$ switch-phpfarm 5.2.23
$ phpunit .
$ switch-phpfarm 5.4.6
$ phpunit .
您还可以为每个客户使用一个虚拟机(例如通过 VirtualBox),这样可以更轻松地进行与您的客户服务器完全相同的设置。
当您设置好它们后,您可以使用例如capistrano将它们自动化。