问题
This morning, I realized that the version of PHPUnit supplied with Xampp has been deprecated for quite a while... . The version 3.7.21. installed in Xampp, but the actual version (at the time of this writing) is 6.0.13.
I tried some solution proposed on google (all old 5 years + solution), including
- https://wehuberconsultingllc.com/wordpress/2007/08/18/updating-phpunit-on-xampp/
- How to configure PhpUnit in Xampp?
- http://www.righthandedmonkey.com/2012/09/setting-up-phpunit-with-xampp.html
- http://forum.kohanaframework.org/discussion/7346/installing-phpunit-on-windows-xampp/p1
- ...
In any case, pear doesn't seem a viable solution. Is there a simple way to update PHPUnit in Xampp?
回答1:
Actually, it can be updated in three simple steps:
- Download the last version of PHPUnit here: https://phpunit.de/index.html
- Copy “phpunit.phar” in “C:\xampp\php”.
- In the file: “phpunit.bat”, update the following line:
"%PHPBIN%" "C:\xampp\php\phpunit" %*
to :"%PHPBIN%" "C:\xampp\php\phpunit.phar" %
*
You don't need to restart apache.
Additional note: In your tests, you will need to replace: phpunit_framework_testcase
by: TestCase
And include: use PHPUnit\Framework\TestCase
at the top of your test files.
Of course, the test suites are still compatible on my production server (centos7, follow the official documentation to update on Linux https://phpunit.de/getting-started.html).
回答2:
Thanks, Working OK with XAMPP v7.3.7
The latest phpunit.phar can be downloaded from: https://phar.phpunit.de
- XAMPP Included Version = PHPUnit 3.7.21 by Sebastian Bergmann.
- DOWNLOADED Version (2019-08-11) = PHPUnit 8.3.4 by Sebastian Bergmann and contributors.
回答3:
I had similar problem and found different solution. I have install phpunit with composer globaly
composer global require phpunit/phpunit "^9"
and localy in my project (both same version "^9").
cd C:/fullpath/to/myproject
composer require-dev phpunit/phpunit "^9"
However for some reason phpunit was triggered from the xampp folder.. so what I did was removed
phpunit
phpunit.bat
From C:\xampp\php
and it worked for me.
Just remember to set composer path to your env path in Windows.
Now you can create phpunit.xml in you project root (here is what worked for me):
<?xml version="1.0" encoding="UTF-8"?>
<phpunit xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:noNamespaceSchemaLocation="https://schema.phpunit.de/9.0/phpunit.xsd"
bootstrap="vendor/autoload.php"
colors="true"
testdox="true"
verbose="false"
convertErrorsToExceptions="true"
convertNoticesToExceptions="true"
convertWarningsToExceptions="true"
forceCoversAnnotation="true"
processIsolation="false"
stopOnError="false"
stopOnFailure="false"
stopOnIncomplete="false"
stopOnSkipped="false"
stopOnRisky="false">
<testsuites>
<testsuite name="default">
<directory suffix="Test.php">tests</directory>
</testsuite>
</testsuites>
<filter>
<whitelist processUncoveredFilesFromWhitelist="true">
<directory suffix=".php">src</directory>
</whitelist>
</filter>
</phpunit>
Then just cd to my root and run phpunit
in my terminal to run all my tests from the tests
folder
Hope you will find this information helpfull *Editor: Hypper.js - using Git Bash on Windows 10 (incase you wonder)
来源:https://stackoverflow.com/questions/43188374/update-phpunit-xampp