Adicione latência e erros ao seu mock de API
Seu mock de API pode ficar lento, instável e com limite de requisições na hora que você quiser, para que o tratamento de erro que você escreveu rode de verdade antes de ir para produção.
- Atraso em milissegundos
- Taxa de erro por serviço
- Por endpoint também
- As mesmas configurações localmente
Configurações do serviço
O que é simular latência e erro em um servidor mock?
Deixar a API lenta ou instável de propósito para o seu app ter que se virar. Um atraso em milissegundos e uma taxa de erro em porcentagem, aplicados ao serviço inteiro ou a um endpoint só.
Não tem proxy para colocar no meio nem ferramenta de chaos para instalar. A próxima requisição já sai lenta, ou já sai falhando.
Você só testa o caminho feliz
Você já sabe como um 200 se parece. O que não dá para produzir fácil é o timeout, o 503 e o limite de requisições repentino que o seu código de retry e fallback deveria sobreviver, porque a API real é confiável em desenvolvimento e quebra em produção.
Ligue a falha e você passa por esses caminhos na sua própria máquina. O spinner que nunca para sai bem mais barato ali do que em produção.
Latência fixa
Adicione um atraso em cada resposta e veja o que os seus estados de carregamento e timeouts fazem de verdade em uma rede lenta.
Taxa de erro
Defina a fatia de requisições que falha, para o seu código de retry e fallback rodar enquanto você ainda está escrevendo.
Por endpoint
Deixe lenta ou quebre uma rota só e mantenha o resto rápido, para um teste mirar exatamente a falha que te interessa.
Perguntas
- Dá para falhar só um endpoint?
- Dá. Latência e taxa de erro podem ser definidas para um serviço inteiro ou para um endpoint só, então o resto da API continua rápido e saudável.
- Uma requisição atrasada ainda conta?
- Conta. Uma resposta lenta continua sendo uma resposta, então ela conta nas requisições do seu plano igual a uma rápida.
- Dá para fazer isso sem o serviço na nuvem?
- Dá. O motor é licenciado sob MIT e lê as mesmas configurações de um arquivo, então você produz as mesmas falhas localmente ou no CI.
Traga um spec. Leve um servidor mock.
Começar não custa nada. Infraestrutura dedicada quando precisar.