Define escopo, camadas, fixtures, cenários, casos extremos, asserções e critérios de aceitação para testes de integração. Esta referência fixa o limite de adoção, comportamento em falhas e evidências observáveis, deixando os limites específicos do ambiente configuráveis.
Status do pacote: contexto de referência pronto para revisão humana. O contrato e os cenários de teste estão completos, mas não se afirma que uma implementação adotante os tenha aprovado.
Decisão
Para testes de integração, adote um plano de teste baseado em riscos e versionado, com fixtures reproduzíveis e gates próprios. Trate o bloco como um contrato de release e regressão construído a partir de casos representativos positivos, de limite, negação, falha e recuperação. Este pacote é um contrato de referência: a equipe adotante deve escolher limites numéricos, provedores, jurisdições e responsáveis operacionais a partir de evidências em seu próprio ambiente.
Escopo
- Os atores, entradas, saídas, estados, versões de política ou esquema e resultados visíveis externamente descritos por este bloco de teste.
- Interfaces primárias e alternativas, trabalho em segundo plano, caches, integrações, caminhos de suporte e evidências que podem exercitar o mesmo limite.
- Configuração específica de adoção, implantação, recuperação e responsabilidades de verificação necessárias para aplicar a referência com segurança.
Fora deste bloco
- Escolher um fornecedor universal, framework, jurisdição, limite numérico, período de retenção ou objetivo de nível de serviço para todos os adotantes.
- Afirmar que os cenários empacotados foram executados contra uma implementação a jusante ou que esta referência concede certificação legal, de segurança ou acessibilidade.
Contrato
- Relacione cada teste crítico a um comportamento, limite, incidente ou risco e afirme resultados visíveis externamente ou evidências duráveis.
- Controle relógio, aleatoriedade, identidade, rede e dependências de dados para que reexecuções distingam defeitos do produto de instabilidade da fixture.
- Mantenha dados sensíveis de produção e credenciais fora das fixtures; gere casos sintéticos representativos de limite e abuso.
- Defina critérios de retry, quarentena, propriedade, expiração e remoção para testes instáveis; retries não podem transformar uma falha em sucesso silencioso.
- Registre versão da fixture, ambiente, configuração, resultado observado e localização da evidência para cada execução decisória.
- Separe falha do produto, falha de dependência, falha da infraestrutura de teste e evidência inconclusiva nos relatórios.
- Exercite limites e esquemas reais e próprios com comportamento representativo de autenticação, autorização, dados, temporização, duplicação, falha e recuperação, em vez de duplicar internos de unidade.
- Isole efeitos externos por meio de dependências controladas ou sandboxes, crie fixtures determinísticas, limpe-as por propriedade e preserve evidências de correlação para falhas.
Orientações de implementação
- Construa o menor conjunto determinístico de fixtures que cubra classes de risco, depois adicione casos derivados da produção somente após revisão segura de privacidade.
- Modele entradas, saídas, atores, estados, invariantes, efeitos colaterais e evidências dos testes de integração antes de selecionar detalhes de framework ou fornecedor.
- Armazene a versão aplicável do contrato ou política de testes de integração com estado material para que migrações, replay e decisões de suporte permaneçam atribuíveis.
- Introduza o caminho por trás da implantação controlada, compare resultados esperados e observados, e mantenha uma rota de recuperação testada até que a evidência de adoção esteja completa.
Tratamento de falhas e salvaguardas
- Um ambiente de teste quebrado reporta um resultado de infraestrutura distinto da falha do produto e não pode satisfazer um gate de release obrigatório.
- Estado inválido ou contraditório de teste de integração é rejeitado ou colocado em quarentena; a implementação nunca supõe um valor que amplie autoridade ou duplique um efeito.
- Retries são limitados e usam identidade durável; após esgotamento, o trabalho alcança um estado terminal inspecionável com um responsável accountable.
Verificação e operações
- Execute a suíte duas vezes a partir de um estado limpo e confirme que ordem, retries e execução paralela não alteram o veredito.
- Monitore sucesso, negação, falha de validação, falha de dependência, esgotamento de retries e recuperação por versão do contrato sem dimensões sensíveis do payload.
- Reexecute fixtures positivas e negativas pareadas após mudanças de política, esquema, dependência, migração ou limite e preserve as evidências resultantes.
Suposições de adoção
- Nomes e valores no exemplo são uma fixture concreta, não padrões universais; adotantes os substituem por meio de evidências documentadas e propriedade.
- O sistema adotante pode fornecer identidade autenticada, versões duráveis de operação ou registro, telemetria limitada e um caminho controlado para mudanças.
Os exemplos com aparência executável neste pacote são fixtures e contratos de aceitação. Execute o validador da coleção para checar estrutura e metadados, depois traduza e execute os cenários no repositório alvo antes de registrar evidências da implementação.