Я прочитал много документации по тестированию контроллеров с помощью $this->call($destination, $parameters, 'GET');
, но это, похоже, зависит от того, какой маршрут настроен, и зная, что нужно использовать $destination
.
Как правило, это нормально, но доступ к контроллеру с маршрута не подходит для модульного тестирования. Я хочу unit test контроллер, а не маршрут. Существует стандартный способ для unit test контроллеров, не имея дело с маршрутами?
Просто вручную создается экземпляр контроллера и вызывается метод достаточно? Например.
$controller = new MyController;
$response = $controller->someMethod($param);
$this->assertSomething($response);
Возможно, контроллеры не должны тестироваться на модуле (и только имеют приемочные тесты), и мой запрос является признаком того, что мои контроллеры слишком тяжелы.