Mit composer require --dev symfony/test-pack PHPUnit installieren.
In ddev ssh MySQL mit mysql -u root aufrufen.
CREATE DATABASE IF NOT EXISTS `db_test`;
GRANT ALL PRIVILEGES ON `db_test`.* TO 'db'@'localhost';
GRANT ALL PRIVILEGES ON `db_test`.* TO 'db'@'%';
FLUSH PRIVILEGES;
ausführen, damit die Testdatenbank die selben Rechte hat, wie die Originaldatenbank. Achtung: die richtigen Anführungszeichen müssen verwendet werden, sonst kommt eine Fehlermeldung, dass die Syntax nicht stimmt.
Daran denken, dass alle Migrationen auch für die db_test durchgeführt werden müssen:bin/console doctrine:migrations:migrate --env=test
Achtung: Bei den Testläufen beachten, dass die Testdatenbank verwendet wird. Das heißt, es muss geprüft werden, ob diese die erwarteten Daten enthält oder nicht.
Zum Erstellen von Tests ist php bin/console make:test recht hilfreich.