Update PHPunit Xampp

为君一笑 提交于 2020-08-21 05:36:47

问题


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:

  1. Download the last version of PHPUnit here: https://phpunit.de/index.html
  2. Copy “phpunit.phar” in “C:\xampp\php”.
  3. 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

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!