symfony / http-kernel avec phpstorm & docker phpunit & xdebug

[1. Source de téléchargement](# 1-Source de téléchargement) [2. paramètres du docker](# 2-paramètres du docker) [3. paramètres phpstorm](# 3-paramètres phpstorm)

1. Télécharger la source

git clone https://github.com/symfony/http-kernel.git

2. Paramètres du docker

cd ./http-kernel
mkdir docker
touch docker/Dockerfile
touch docker/php.ini
touch docker-compose.yml

Dockerfile


FROM php:7.4

RUN pecl install xdebug \
    && docker-php-ext-enable xdebug

RUN apt-get update && \
    apt-get upgrade -y && \
    apt-get install -y git

php.ini


; timezone
date.timezone = Asia/Tokyo

; error reporing
log_errors = On
error_log = /dev/stderr

; xdebug
xdebug.remote_enable = 1
xdebug.remote_autostart = 1
xdebug.remote_connect_back = 1

docker-compose.yml


version: "3"
services:
  php-cli:
    build: ./docker
    volumes:
      - ./:/var/www/html
      - ./docker/php.ini:/usr/local/etc/php/php.ini
    working_dir: /var/www/html
  composer:
    image: composer
    volumes:
      - ./:/app
      - ./docker/php.ini:/usr/local/etc/php/php.ini
    working_dir: /app
  1. Composer Install
docker-compose run composer install
docker-compose run composer require --dev symfony/phpunit-bridge

Au fait, phpunit / phpunit n'est pas utilisé. [^ 1]

The PHPUnit bridge is designed to work with all maintained versions of Symfony components, even across different major versions of them. You should always use its very latest stable major version to get the most accurate deprecation report.

J'obtiens une erreur lorsque je l'utilise.

docker-compose run php-cli ./vendor/bin/phpunit Tests/
[25-Oct-2020 07:28:39 Asia/Tokyo] PHP Fatal error:  Trait 'Symfony\Bridge\PhpUnit\ExpectDeprecationTrait' not found in /var/www/html/Tests/Controller/ContainerControllerResolverTest.php on line 21

Remarque

docker-compose run composer ./vendor/bin/simple-phpunit

Installez phpunit / phpunit depuis symfony / phpunit-bridge en exécutant

3. Paramètres phpstorm

File > Settings > Languages & Frameworks > PHP

Configurez phpstorm pour exécuter le PHP de Docker

Cliquez sur ... à l'extrême droite de l'interpréteur CLI Screenshot from 2020-10-25 07-33-45.jpg

Cliquez sur le bouton + supplémentaire et sélectionnez Depuis Docker, ... Screenshot from 2020-10-25 07-34-02.png

Vérifiez Docker-compose et sélectionnez le service php (php-cli dans ce cas) à exécuter à partir de docker. Screenshot from 2020-10-25 07-34-26.png

Si vous appuyez sur OK et que php est chargé et que la version etc. est affichée, il n'y a pas de problème Screenshot from 2020-10-25 07-34-43.png

Phpunit File > Settings > Languages & Frameworks > PHP > Test Frameworks

Configurer phpstorm pour exécuter phpunit dans docker

Sélectionnez PHPUnit par Remote Interpreter à partir du bouton + supplémentaire Screenshot from 2020-10-25 07-37-21.png

Sélectionnez php-cli Screenshot from 2020-10-25 07-37-40.png

  1. Vérifiez le chemin vers phpunit.phar dans la bibliothèque PHPUnit
  2. Chemin vers phpunit.phar `` `/ var / www / html / vendor / bin / simple-phpunit```
  3. Vérifiez le fichier de configuration par défaut de Test Runner et cochez / var / www / html / phpunit.xml.dist```

Screenshot from 2020-10-25 10-00-25.png

Exécuter

Sélectionnez modifier la configuration avec le sélecteur à gauche de l'icône de bogue en haut à droite de l'éditeur Lorsque l'écran s'ouvre, sélectionnez Phpunit à partir du bouton + supplémentaire et définissez comme ci-dessous Screenshot from 2020-10-25 09-56-18.png

Collez le point d'arrêt et cliquez sur l'icône de bogue avec simple-phpunit sélectionné

Screenshot from 2020-10-25 08-30-20.png

Recommended Posts

symfony / http-kernel avec phpstorm & docker phpunit & xdebug
Si vous êtes bloqué avec PHPStorm et xdebug sur docker. dépannage
Écrivez solidement avec PhpStorm
Lancez MariaDB avec Docker
Utiliser Puphpeteer avec Docker
Exploitez Emby avec Docker
Exécutez Payara avec Docker
PHP jetable avec Docker