Tjo*_*rie 55 phpunit symfony composer-php
我想用phpunit开始单元测试我的symfony 2应用程序.我使用composer安装了phpunit(每个项目的依赖性). http://www.phpunit.de/manual/current/en/installation.html
我现在如何在Zend Server上运行phpunit命令?我没有安装梨.
Wou*_*r J 74
如果您按照文档进行操作,则将phpunit/phpunit
依赖项设置为"dev-dependency".
如果您没有composer,则需要先安装它.这在文档中进行了解释:Installation*nix或Installation Windows.如果您已经安装了composer,最好通过运行以下self-update
命令将composer更新到最新版本:
$ php composer.phar self-update
Run Code Online (Sandbox Code Playgroud)
完成后,您需要安装所有依赖项,包括dev依赖项.这是通过update
使用--dev
开关运行命令来完成的:
$ php composer.phar update --dev
Run Code Online (Sandbox Code Playgroud)
所有依赖项都安装在vendor
目录中.PHPunit从控制台运行.Composer自动将控制台文件放在vendor/bin
目录中.你需要phpunit
在那里执行文件:
$ vendor/bin/phpunit -c app/
Run Code Online (Sandbox Code Playgroud)
该-c
开关告诉PHPUnit来寻找在配置文件app
目录,Symfony2中已经设置了正确的配置来运行在所有的测试<bundle>/Tests
目录.
Composer已更改其更新/安装命令.update
默认情况下将安装dev依赖项,如果要安装dev依赖项,则需要使用该--dev
选项.
Composer再次更改了命令,该install
命令还将安装dev依赖项.
Sta*_*lex 23
更多的作曲家方式呢?
composer exec phpunit
Run Code Online (Sandbox Code Playgroud)
它可用于vendor/bin目录中的每个二进制文件.
med*_*ina 16
更新(12-02-2014)
Composer和PHPUnit再次更改了命令.install命令还将安装dev依赖项:
Composer.json:
...
"require-dev": {
"phpunit/phpunit": "3.7.*"
},
Run Code Online (Sandbox Code Playgroud)
运行:
$ composer.phar update --prefer-dist --dev
Run Code Online (Sandbox Code Playgroud)
现在您可以通过以下方式运行测试:
$ bin/phpunit -c /app
Run Code Online (Sandbox Code Playgroud)
干杯,
Fli*_*imm 11
我想在其中定义一个脚本composer.json
,以便我可以运行:
$ composer test
# ... runs phpunit
Run Code Online (Sandbox Code Playgroud)
为此,我需要修改composer.json
以包含这样的条目:
"scripts": {
"test": [
"phpunit tests/*.php"
]
}
Run Code Online (Sandbox Code Playgroud)
对于Symfony 3,添加"phpunit/phpunit": "5.4.*"
到"require-dev"
您的部分composer.json
并从应用程序根目录运行测试:
./vendor/bin/phpunit tests
Run Code Online (Sandbox Code Playgroud)
在项目目录中将其添加为dev依赖项:
composer require --dev "phpunit/phpunit=4.8.*"
Run Code Online (Sandbox Code Playgroud)
现在可以使用以下命令执行已安装的phpunit:
./vendor/bin/phpunit
Run Code Online (Sandbox Code Playgroud)