2016-01-29 6 views
1

Я довольно новичок в модульном тестировании. Я попросил написать модульный тест в моем приложении. В моем приложении у нас есть контроллеры и службы. Я пытаюсь высмеять работу, вызванную из контроллера, как это.Mocking Jobs in laravel 5.2 Тестирование модулей

$this->expectsJobs(App\Jobs\UploadResponseEmail::class); 

Это бросает следующую ошибку

production.ERROR: Издевательство \ Exception \ NoMatchingExpectationException: Нет обработчика соответствия найденное Mockery_0_Illuminate_Bus_Dispatcher :: Dispatch (объект (App \ Вакансии \ UploadResponseEmail)). Либо метод был неожиданным, либо его аргументы не соответствовали ожидаемому списку аргументов для этого метода.

У задания есть конструктор, который ожидает аргумент. Я думаю, что это вызывает ошибку. Как передать аргумент конструктора здесь. Есть идеи ?

ответ

0

Вам необходимо добавить насмешку в файл composer.json, если вы используете просвет. Laravel имеет его по умолчанию, так что ваш вопрос о Lumen не Laravel

"mockery/mockery": "0.9.*", 

Даже из Laravel 5.1 было: https://github.com/laravel/laravel/blob/5.1/composer.json

Где, как Lumen 5.2 отсутствует: https://github.com/laravel/lumen/blob/v5.2.1/composer.json

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