我刚刚在 OS X + MAMP 上安装了 PHPUnit。(我的 phpunit 安装在我的 MAMP 文件夹中,所以我将它复制到 /usr/bin 因为我无法在没有路径的终端中使用“phpunit”命令)
新建 Symfony 文件夹
当我转到一个新的 Symfony2 文件夹并尝试phpunit -c App/
开始测试时,我得到一个绿色确认,表明所有测试都通过了。
PHPUnit 3.7.8 by Sebastian Bergmann.
Configuration read from
/Users/username/Dropbox/www/symfonydev/Symfony/App/phpunit.xml.dist
.
Time: 0 seconds, Memory: 15.50Mb
OK (1 test, 1 assertion)
自己的 symfony 网站
但是当我去我自己的小 Symfony2 项目并执行相同的命令时,什么也没有发生!他甚至不加载 phpunit.xml.dist。我的终端窗口根本没有输出。
然而,测试文件确实存在并且是可读的,我可以通过在 phpunit 的命令行上显式指定它来启动它:
phpunit -c app/ src/MatchTracker/Bundle/Tests/Controller/AuthenticationControllerTest.php
这有效。
phpunit.xml.dist 似乎有问题。这是默认的 phpunit.xml.dist,我尝试将其重命名为 phpunit.xml。但什么也没有发生。可能是什么问题呢?我认为他找不到我的 xml 或使用它,或者他可以阅读 phpunit.xml 但没有找到我的测试。
这是我的终端的一个例子:你看到 phpunit 命令没有做任何事情,除非我指定了测试文件......
MacBook-Pro:www username$ ls
LICENSE app composer.json composer.lock composer.phar src vendor web
MacBook-Pro:www username$ ls app/
AppCache.php SymfonyRequirements.php cache console phpunit.xml.dist
AppKernel.php autoload.php check.php logs
Resources bootstrap.php.cache config phpunit.xml
MacBook-Pro:www username$ phpunit -c app/
MacBook-Pro:www username$ phpunit -c app/ src/MatchTracker/Bundle/Tests/Controller/AuthenticationControllerTest.php
PHPUnit 3.7.8 by Sebastian Bergmann.
Configuration read from /Users/username/Dropbox/www/matchtracker.be/www/app/phpunit.xml
F
Time: 1 second, Memory: 21.75Mb
There was 1 failure:
1) MatchTracker\Bundle\Tests\Controller\DefaultControllerTest::testIndex
Failed asserting that 404 matches expected 200.
/Users/username/Dropbox/www/matchtracker.be/www/src/MatchTracker/Bundle/Tests/Controller/AuthenticationControllerTest.php:28
FAILURES!
Tests: 1, Assertions: 1, Failures: 1.
MacBook-Pro:www username$