Smoke-тесты

При деплое хочется проверить всю систему. Для этого лучше использовать так называемые тесты на общую работоспособность (smoke-тесты). Обычно они запускаются после деплоя приложения в среду (не важно в какую среду).

Последнее время нравится JetBrains HTTP Client: https://www.jetbrains.com/help/idea/http-client-in-product-code-editor.html . Суть в том, что декларативно можно описать запрос, а ответ проверить используя JavaScript. И HTTP он не ограничивается: GRPC, GraphQL, WebSocket.

Например:

GET https://httpbin.org/status/200

> {%
  client.test("Request executed successfully", function() {
    client.assert(response.status === 200, "Response status is not 200"); 
  });
%}

Можно передавать переменные из одного запроса в другой:

GET https://httpbin.org/json

> {%
  client.global.set("someId", response.body.slideshow.title)
%}

### Use variable
GET https://httpbin.org/headers
X-SOME-ID: {{someId}}

Так же это все можно запускать через CICD:

docker run --rm -it -v $PWD:/workdir jetbrains/intellij-http-client my.http

Еще из полезного: можно вставлять и копировать запросы в формате cURL.