Laravel 8x: phpunit ожидал код состояния 204, но получил 429. Не удалось подтвердить, что 204 идентичен 429

#laravel #api #automated-tests #phpunit

#laravel #API #автоматизированные тесты #phpunit

Вопрос:

Я пытаюсь протестировать 1000 запросов, связанных с сервисом API:

    for($i = 0;$i<1000;$i  )
    {
        $response = $this->put('/api/update',$data);
        $response->assertStatus(204);
    }
  

к сожалению, когда я получаю 50 запросов, тест завершается неудачно для 429.

Я также попытался запустить тест с помощью —process-isolation, но я получаю обычные результаты

Комментарии:

1. app/Http/Kernel.php в вы можете увеличить throttle:60,1 в зависимости от вашего запроса.

2. я не понял, как это изменить: ‘api’ => [ ‘throttle:api’, Illuminate Routing Middleware SubstituteBindings::class, ], @KamleshPaul

3. throttle:api за 1 монетный двор вы можете сделать 60 запросов. если вы удалите это, ограничение будет изменено

4. я получаю «дроссель: 1200,1», и я исправляю @KamleshPaul

5. Я предполагаю, что вы используете обычную загрузку приложения с тестированием, чего вы достигаете, тестируя свой api 1000 раз? Это кажется очень синтетическим и не дает никаких реальных преимуществ imo, поскольку в приложении не будет задействован какой-либо http-сервер.