Symfony 4.4 Модульный тест - Не удается увидеть dump () в тестах, расширяющих KernelTestCase и вызывающих self :: bootKernel (); - PullRequest
2 голосов
/ 28 января 2020

Используя пример, найденный здесь: https://symfony.com/doc/4.4/testing.html#unit -tests , в сочетании с примером, найденным здесь: https://symfony.com/doc/current/testing/database.html. Чтобы получить доступ к служебному контейнеру, вы должны расширить use Symfony\Bundle\FrameworkBundle\Test\KernelTestCase; и вызвать $kernel = self::bootKernel(); в функции setUp() модульного теста.

Однако, когда я расширяю этот класс и вызываю self::bootKernel(), все возможность использовать dump() утеряна, и когда я вызываю print_r или var_dump для любого объекта, полученного, скажем, в результате создания построителя запросов, в консоли получается killed., потому что он слишком большой, так что это не опция при отладке объектов и больших объектов, таких как dump:

<?php

namespace App\Tests\Util;

use App\Util\Calculator;
use PHPUnit\Framework\TestCase;
use Symfony\Bundle\FrameworkBundle\Test\KernelTestCase;

class CalculatorTest extends KernelTestCase
{
    public function setUp(): void
    {
        $kernel = self::bootKernel();
        $this->entityManager = $kernel->getContainer()->get('doctrine')->getManager();
    }

    public function testAdd()
    {
        $calculator = new Calculator();
        $result = $calculator->add(30, 12);
        dump($result);

        // assert that your calculator added the numbers correctly!
        $this->assertEquals(42, $result);
    }
}

Ожидаемый вывод:

$ php bin/phpunit
PHPUnit 7.5.20 by Sebastian Bergmann and contributors.

Testing Project Test Suite
^ 42
.                                                                   1 / 1 (100%)

Time: 204 ms, Memory: 6.00 MB

OK (1 test, 1 assertion)

Вывод с self::bootKernel() с именем:

$ php bin/phpunit
PHPUnit 7.5.20 by Sebastian Bergmann and contributors.

Testing Project Test Suite
.                                                                   1 / 1 (100%)

Time: 471 ms, Memory: 16.00 MB

OK (1 test, 1 assertion)
...