Testar meu aplicativo com erros aleatórios
Ao criar aplicativos, você deve testar como seu aplicativo lida com erros de API. O Dev Proxy permite simular erros em qualquer API usada em seu aplicativo usando o GenericRandomErrorPlugin.
Simule erros em qualquer API
Para começar, habilite o GenericRandomErrorPlugin
em seu arquivo de configuração.
{
"$schema": "https://raw.githubusercontent.com/microsoft/dev-proxy/main/schemas/v0.20.0/rc.schema.json",
"plugins": [
{
"name": "GenericRandomErrorPlugin",
"enabled": true,
"pluginPath": "~appFolder/plugins/dev-proxy-plugins.dll",
"configSection": "errorsContosoApi",
"urlsToWatch": [
"https://api.contoso.com/*"
]
}
]
}
Dica
Como cada API é diferente, você normalmente configura uma instância da GenericRandomErrorPlugin
para cada API na qual deseja simular erros. Para facilitar o gerenciamento da configuração, nomeie a configSection
API com a qual você deseja simular erros. Além disso, especifique as URLs nas quais você deseja simular erros na urlsToWatch
propriedade com o plug-in. Isso facilitará o gerenciamento da configuração e a reutilização no futuro.
Em seguida, configure o plug-in para usar um arquivo que contenha os erros que você deseja simular.
{
"errorsContosoApi": {
"errorsFile": "errors-contoso-api.json"
}
}
Por fim, no arquivo de erros, defina a lista de respostas de erro que você deseja simular. Por exemplo, para simular um erro 500 com uma resposta JSON personalizada, use a seguinte configuração:
{
"$schema": "https://raw.githubusercontent.com/microsoft/dev-proxy/main/schemas/v0.20.0/genericrandomerrorplugin.schema.json",
"errors": [
{
"request": {
"url": "https://api.contoso.com/*"
},
"responses": [
{
"statusCode": 500,
"headers": [
{
"name": "content-type",
"value": "application/json; charset=utf-8"
}
],
"body": {
"code": "InternalServerError",
"message": "Something went wrong"
}
}
]
}
]
}
Você pode definir quantas respostas de erro forem necessárias.
Inicie o Dev Proxy com seu arquivo de configuração e use seu aplicativo para ver como ele lida com os erros. Para cada solicitação correspondente, o Dev Proxy determina se deve simular um erro ou passar a solicitação para a API original usando a taxa de falha configurada. Quando o Dev Proxy simula um erro, ele usa um erro aleatório da matriz de respostas de erro que você definiu no arquivo de configuração.
Desativar temporariamente as simulações
Se você usar simulações em seu arquivo de configuração, poderá desativá-las temporariamente usando a --no-mocks
opção.
devproxy --no-mocks
Próxima etapa
Saiba mais sobre o GenericRandomErrorPlugin
.