Модульное тестирование просмотров в Laravel? - PullRequest
0 голосов
/ 04 апреля 2019

Как выполнить модульное тестирование функции контроллера, которая возвращает представление.Вот моя функция контроллера

public function index(Request $request)
{
   $data = Data::all();
   return view('index',[
       'data' => $data
   ]);
}

Вот тестовый код

public function testIndex()
{
   $response = $this->withoutMiddleware();

   $response = $this->get('/user');

   $response->assertSuccessful();
}

Я пробовал это

public function testIndex()
{
   $response = $this->withoutMiddleware();

   $response = $this->get('/user');

   $response = $this->assertContains('data', $response->content());

   $response->assertSuccessful();
}

, который показывает ошибку

Ошибка: вызов функции-члена assertSuccessful () со значением NULL

Есть идеи, как написать контрольный пример для моей функции контроллера индекса?

1 Ответ

0 голосов
/ 22 мая 2019

Вы переназначили $ response в вашем первом утверждении.Не нужно этого делать

Я не знаю, что assertContains возвращает из головы, но держу пари, что это не $ this.

Честно говоря, я не знаю, почему образецВы сначала назначаете что-либо для $ response, кроме ответа от HTTP-запроса.

public function testIndex()
{
   $this->withoutMiddleware();
   $response = $this->get('/user');
   $this->assertContains('data', $response->content());
   $response->assertSuccessful();
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...