VSCode с PHP5 - PullRequest
       79

VSCode с PHP5

1 голос
/ 08 января 2020

Я борюсь с настройкой среды для старого технического проекта с PHP5. Моя ОС Windows, и я установил плагины VSCode: PHP Debug, PHP Intelephense, PHPUnit, PHPUnit Test Explorer. Я скачал phpunit-5.7.27.phar и настроил VSCode в соответствии с документацией.

Settings.json

{
    "php.validate.executablePath": "C:/wamp64/bin/php/php5.6.40/php.exe",
    "phpunit.phpunit": "C:/wamp64/bin/php/php5.6.40/phpunit-5.7.27.phar",
    "phpunit.php": "C:/wamp64/bin/php/php5.6.40/php.exe",
    "intelephense.environment.phpVersion": "5.6.40",
    "intelephense.environment.includePaths": [
        "C:/wamp64/bin/php/php5.6.40/phpunit-5.7.27.phar",
        "C:/wamp64/bin/php/php5.6.40/php.exe",
        "C:/wamp64/bin/php/php5.6.40/"
    ]

}

Launch.json

{
    "version": "0.2.0",
    "configurations": [
        {
            "name": "Listen for XDebug",
            "type": "php",
            "request": "launch",
            "port": 9000,
            "xdebugSettings": {
                "max_children": 256,
                "max_data": 500,
                "max_depth": 3
            }
        },
    ]
}

То, что у меня хорошо работает, это точка останова на запуск приложения с помощью xdebug и запуск юнит-тестов с помощью Cmd+Shift+P.

Мне нужна помощь в следующем:

  1. Редактор кода показывает ошибку для PHP классов и методов юнитов (даже хотя юнит-тесты выполняются нормально, как есть). Нужно ли добавлять в путь что-то кроме файла phar? VSCode несовместим с phar-файлами? То же самое происходит для PHPUnit\Framework\TestCase.
  2. Я не могу понять, как настроить плагин Test Explorer, чтобы красиво отображать дерево тестов. Требуется ли некоторая конфигурация в Launch. json? Запуск тестов с Cmd+Shift+P отображает результаты только в терминале.

Installed plugins and editor error on PHPUnit class

1 Ответ

2 голосов
/ 05 марта 2020
  1. PHP Intelephense требуется установленный PHPUnit с composer в рабочей области.
    composer require --dev phpunit/phpunit
    
  2. PHPUnit Test Explorer по умолчанию имеет значение Phpunit: Files, установленное на {test,tests}/**/*Test.php, поэтому изменение его на правильный глобус должно позволить плагину обнаруживать все тесты.
...