Тестирование обработки ошибок сервера в приложении Play - PullRequest
0 голосов
/ 01 мая 2018

У меня есть сервер приложений Proxy Play (сервер A) перед другим сервером (сервер B). Когда на этом прокси-сервере A происходит ошибка сервера, я хотел бы сделать запрос на другой сервер B и вернуть его ответ, а если это тоже не удалось, вернуться с внутренней ошибкой сервера.

Насколько я понимаю, вы можете отлавливать ошибки в dev env и prod env, но не в тестовом env (https://www.playframework.com/documentation/2.6.x/ScalaErrorHandling#Extending-the-default-error-handler)

/**
   * Invoked in dev mode when a server error occurs.
   *
   * @param request The request that triggered the error.
   * @param exception The exception.
   */
  protected def onDevServerError(request: RequestHeader, exception: UsefulException): Future[Result] =
    Future.successful(InternalServerError(views.html.defaultpages.devError(playEditor, exception)))

/**
   * Invoked in prod mode when a server error occurs.
   *
   * Override this rather than [[onServerError]] if you don't want to change Play's debug output when logging errors
   * in dev mode.
   *
   * @param request The request that triggered the error.
   * @param exception The exception.
   */
  protected def onProdServerError(request: RequestHeader, exception: UsefulException): Future[Result] =
    Future.successful(InternalServerError(views.html.defaultpages.error(exception)))

Я хотел бы знать, смогу ли я проверить вышеуказанный сценарий (ответ сервера B при сбое сервера A) в тестовой среде.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...