Testa min app med slumpmässiga fel
När du skapar appar bör du testa hur din app hanterar API-fel. Med Dev Proxy kan du simulera fel på alla API:er som du använder i din app med hjälp av GenericRandomErrorPlugin.
Simulera fel på alla API:er
Starta genom att GenericRandomErrorPlugin
aktivera i konfigurationsfilen.
{
"$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/*"
]
}
]
}
Dricks
Eftersom varje API är olika konfigurerar du vanligtvis en instans av GenericRandomErrorPlugin
för varje API som du vill simulera fel på. För att göra det enklare att hantera konfigurationen namnger configSection
du efter det API som du vill simulera fel på. Ange dessutom de URL:er som du vill simulera fel på i urlsToWatch
egenskapen med plugin-programmet. Detta gör det enklare att hantera konfigurationen och återanvända den i framtiden.
Konfigurera sedan plugin-programmet så att det använder en fil som innehåller de fel som du vill simulera.
{
"errorsContosoApi": {
"errorsFile": "errors-contoso-api.json"
}
}
Slutligen definierar du listan över felsvar som du vill simulera i felfilen. Om du till exempel vill simulera ett 500-fel med ett anpassat JSON-svar använder du följande konfiguration:
{
"$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"
}
}
]
}
]
}
Du kan definiera så många felsvar som du behöver.
Starta Dev Proxy med konfigurationsfilen och använd din app för att se hur den hanterar felen. För varje matchande begäran avgör Dev Proxy om du vill simulera ett fel eller skicka begäran till det ursprungliga API:et med hjälp av den konfigurerade felfrekvensen. När Dev Proxy simulerar ett fel används ett slumpmässigt fel från matrisen med felsvar som du definierade i konfigurationsfilen.
Inaktivera mocks tillfälligt
Om du använder mocks i konfigurationsfilen kan du tillfälligt inaktivera dem med hjälp --no-mocks
av alternativet .
devproxy --no-mocks
Gå vidare
Läs mer om GenericRandomErrorPlugin
.