O documento discute testes automatizados de contrato utilizando as bibliotecas RestAssured e JsonSchemaValidator. Ele explica o que é teste de contrato, como validar status codes, cabeçalhos, formato e corpo da resposta, e fornece um exemplo de código. A estratégia sugerida é executar os testes após cada deploy para garantir que os contratos não foram quebrados.
10. Classificação da informação: Uso Interno
. . . .
. . . .
. . . .
. . . .
. . . .
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
+
. . . .
. . . .
. . . .
. . . .
. . . .
CONTRACT FIRST
• "Contract-first" é uma abordagem usada no desenvolvimento de
aplicações onde o primeiro passo é definir um contrato;
• O contrato define o que o serviço vai fazer, quais operações ele suporta,
quais tipos de dados ele usa, e como as mensagens serão trocadas entre o
cliente e o serviço;
• Uma vez que o contrato é definido, ele habilita o desenvolvimento por
parte do cliente, do servidor e da automação;
• A abordagem "contract-first" é contrastada com a abordagem "code-
first", onde o código é escrito primeiro e o contrato é gerado a partir do
código.
Alternativas para iniciar a automação sem a Aplicação pronta e disponível: MockServer`s: Hoverfly,
Wiremock Server ou Cloud, jSonServer, etc.
Fonte: Material sobre Contract First: https://www.zup.com.br/blog/desenvolvimento-de-apis-design-first-e-code-first
11. Classificação da informação: Uso Interno
. . . .
. . . .
. . . .
. . . .
. . . .
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
DESCOMPLICANDO
. . . .
. . . .
. . . .
. . . .
. . . .
+
. . . .
. . . .
. . . .
. . . .
. . . .
• Teste de contrato não é Pact Framework;
• Não confunda “Teste de Contrato” com “Teste de
Schema”, isso é uma parte do Teste de Contrato;
• O contrato é composto por status code, formato,
cabeçalho e corpo (quando existente);
• Lembre-se de construir o contrato antes da primeira
linha de código;
• Podemos começar por ele e já ter ganhos desde o
primeiro build da aplicação.