Функциональные тесты phpunit Ошибка вызова неопределенного метода - PullRequest
0 голосов
/ 04 октября 2019

У меня вопрос,

Я использую phpunit WebTestCase в Symfony 3.4

, но я не могу выбрать какие-либо данные

, и я получаю

1) Tests \ BankBundle \ Controller \ BankControllerTest :: testmoneyIn Не удалось подтвердить, что нулевые совпадения ожидаются 1.

Я следую этому уроку

этотмой ControllerTest

<?php
namespace Tests\BankBundle\Controller;
use BankBundle\Entity\entry;
use Symfony\Bundle\FrameworkBundle\Test\WebTestCase;
class BankControllerTest extends WebTestCase
{
    /**
     * @var \Doctrine\ORM\EntityManager
     */
    private $em;

    /**
     * {@inheritDoc}
     */
    public function setUp(): void
    {
        static::$kernel = static::createKernel();
        static::$kernel->boot();
        $this->em = static::$kernel->getContainer()
            ->get('doctrine')
            ->getManager();
    }

    public function testmoneyIn()
    {
        $client = static::createClient();
        $client->request('POST', '/bank/moneyin', array('amount' => 50));
        $bank = $this->em
            ->getRepository('BankBundle:entry')
            ->getId(1);

        $this->assertEquals(1, $bank);
    } 

    /**
     * {@inheritDoc}
     */
    protected function tearDown(): void
    {
        parent::tearDown();
        $this->em->close();
    } 
}

1 Ответ

0 голосов
/ 04 октября 2019

Вы пытаетесь утверждать, что $bank = 1. Но $bank является нулевым. Ваш тест не пройденДля тестового использования вы всегда должны использовать предсказуемые данные. Это означает, что всякий раз, когда вы запускаете тест, вы знаете ожидаемый результат. Таким образом, вы уверены, что если ваше утверждение не удалось, значит, ваш код неверен.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...