I'm trying to set up PHPUnit in PhpStorm 2017.1 on Windows 10 using a Vagrant box for a Laravel project. I've set up a remote interpreter, and I've been using it for a couple of months now, everything working fine.
I've been asked to do some unit testing so I've set up PhpStorm with PHPUnit, following my coworkers' instructions (PhpStorm on Mac) but when I select autoload.php in my vendor folder I receive the error message
"Can not parse PHPUnit version output: Could not open input file:
/vagrant/vendorphpunitphpunitphpunit" (no slashes).
If I run PHPUnit via vagrant ssh in the command line, my tests execute fine, and I can manually select the PHPUnit phar in PhpStorm, but then I'm missing the autoloaded classes, so everything fails.
If you get a similar bug when setting up PHPUnit with Docker, then it could also be because of bad volume bindings.
In the following preferences screen, click on the folder icon to Edit Docker Container Settings, then edit the Volume bindings.
In case you configure remote PHP cli interpreter by Docker Compose, if you get a similar bug of parsing PHPUnit version output like this, the reason may comes from using variables in docker-compose.yaml (e.g using $PWD in volume binding).
For instance, if you mount your current directory like this:
...
volumes:
- $PWD:/var/www/html
PHPStorm do not know what $PWD really is, therefore it cannot parse PHPUnit output due to volume binding. You should change the variables to a specific value (e.g to ./ in this case):
...
volumes:
- ./:/var/www/html