问题
I have project on Symfony 2 and i would like use PHPUNIT on Windows 7.
On githut phpunit is:
Composer
Simply add a dependency on phpunit/phpunit to your project's composer.json file if you use Composer to manage the dependencies of your project. Here is a minimal example of a composer.json file that just defines a development-time dependency on PHPUnit 3.7:
{
"require-dev": {
"phpunit/phpunit": "3.7.*"
}
}
For a system-wide installation via Composer, you can run:
composer global require 'phpunit/phpunit=3.7.*'
Make sure you have ~/.composer/vendor/bin/ in your path.
First i use system-wide installation but i dont know when this installed. Next i add to my composer.json require-dev. This installed phpunit in C:/wamp/www/myproject/vendor/symfony. Next i try commands:
composer install --dev
And i can't use phpunit. In cmd.exe i enter "phpunit" and i have error:
'phpunit' is not recognized as an internal or external command operable program or batch file
How can i use phpunit? I have Windows 7, Wamp server and php 5.4.12.
回答1:
When you install PHP-Unit in windows via composer, the global installation will create files in
C:\Users\YOUR_USERNAME\AppData\Roaming\Composer
To execute phpunit
easily via command line you need to add path of phpunit.bat
file in windows Environment Variables. For this:
- Right click
My Computer
- Go to
Properties -> Advance system settings
and- Click
Environment variables
from theAdvance
tab.
Now add C:\Users\YOUR_USERNAME\AppData\Roaming\Composer\vendor\bin
to the windows PATH
.
You can now run the phpunit from command. Note that you may need to restart your command prompt for the changes to take effect.
回答2:
The bin file of packages are put in the configured bin directory. By default, this is vendor/bin
and when you use the symfony standard edition, this is the bin
folder.
To execute this bin file, run ./bin/phpunit
(or ./vendor/bin/phpunit
when not using the Symfony Standard Edition)
Windows users have to put this in double quotes: "bin/phpunit"
(or "vendor/bin/phpunit"
)
回答3:
I remember futzing around with the composer dependency stuff for phpunit and never could get it to work.
Instead, from your git bash shell:
mkdir ~/bin
cd ~/bin
curl https://phar.phpunit.de/phpunit.phar > phpunit
chmod +x phpunit
exit out of bash and then start a new bash session.
And you should be good to go. You can echo $PATH to verify you have a path to ~/bin but one seems to added by default.
https://phar.phpunit.de/phpunit.phar
回答4:
composer require --dev phpunit/phpunit ^7
The above example assumes, composer is already on your $PATH variable.
You composer.json should look similar to;
{
"name": "vendor_name/package_name",
"description": "This project is for practicing writing php unit tests",
"minimum-stability": "stable",
"license": "proprietary",
"authors": [
{
"name": "Umair Anwar",
"email": "umair.anwar@gmail.com"
}
],
"autoload": {
"classmap": [
"src/"
]
},
"require-dev": {
"phpunit/phpunit": "^7",
"phpunit/dbunit": "^4.0"
}
}
回答5:
I also came across the same issue and find out the solution by following steps
To run PHPUnit in Windows 7 under WAMP installation
Composer Install
{ "require-dev": { "phpunit/phpunit": "3.7.*" } }
Simply Set Environment Variable The php unit will be install in a vendor dir in vendor/bin
Path : C:\wamp\www\myproject\vendor\bin;
Open a new Command Prompt C:\Users\guny >phpunit --version PHPUnit 3.7.30 by Sebastain Bergmann
回答6:
Too simple operation on Windows with composer and works for me following way:
Install composer
https://getcomposer.org/doc/00-intro.md#installation-windows Go to your symphony folder e.g C:\wamp64\www\symfony\UserManagement where is composer.json and run this command. Should be register with global to not have issue $phpunit bash: phpunit: command not found
//old version is 5.7 new 6.4 or put newest version.
composer global require --dev phpunit/phpunit ^5.7
回答7:
Easiest way to install phpunit via composer is to run from project root.
$ composer require phpunit/phpunit
What this would do is, it will create a phpunit folder inside vendor/bin and you can run unit tests like this..
$ ./vendor/bin/phpunit
来源:https://stackoverflow.com/questions/18688059/install-phpunit-with-composer