2017-02-21 4 views
0

Я создал очень простой базовый api с платформой api-platform. Сейчас я пытаюсь написать простой модульный тест с PHP единицы, но когда я пытаюсь запустить тест я получаю эту ошибку:Symfony/PHPUnitClass 'PHPUnit_Framework_TestCase' не найден

Class 'PHPUnit_Framework_TestCase' not found

Она жаловалась на этой линии:

class JobControllerTest extends \PHPUnit_Framework_TestCase

Это говорит undefined class

Я установил PHPUnit с композитором я понятия не имею, что я делаю неправильно.

Вот мой полный тест:

<?php 
namespace tests\AppBundle; 

class JobControllerTest extends \PHPUnit_Framework_TestCase 
{ 
    public function testPOST() 
    { 
     $client = new Client('http://localhost:8000', array(
      'request.options' => array(
       'exceptions' => false, 
      ) 
     )); 

     $data = array(
      'bar' => "hello", 
     ); 

     $request = $client->post('/foos', null, json_encode($data)); 
     $response = $request->send(); 

     $this->assertEquals(201, $response->getStatusCode()); 
     $this->assertTrue($response->hasHeader('Location')); 
     $data = json_decode($response->getBody(true), true); 
     $this->assertArrayHasKey('bar', $data); 
    } 
} 

Если кто-то может помочь мне любой бит, который будет очень круто :)

Большое спасибо заранее!

+0

Это потому, что вы PHPUnit v6 установлен. Установите v5 или v4, и вам должно быть хорошо идти. На самом деле есть довольно много дискуссий. – Cerad

+0

@Cerad Я видел это на GitHub :) Спасибо, что дал мне знать! –

+0

@Cerad Возможно, вы знаете, почему '' '$ client = new Client (' '' не работает? ', Я сделал композитор, требующий guzzlehttp/guzzle, но, похоже, не работает: p –

ответ

0

Это происходит потому, что на phpunit6 устарел, используйте следующее:

use PHPUnit\Framework\TestCase; 

class UserControllerTest extends TestCase 
+0

Пожалуйста, отформатируйте свой код –

Смежные вопросы