Testování aplikace s náhodnými chybami
Při sestavování aplikací byste měli otestovat, jak aplikace zpracovává chyby rozhraní API. Dev Proxy umožňuje simulovat chyby v libovolném rozhraní API, které používáte ve své aplikaci, pomocí GenericRandomErrorPlugin.
Simulace chyb v libovolném rozhraní API
Začněte tím, že v konfiguračním GenericRandomErrorPlugin
souboru povolíte příkaz .
{
"$schema": "https://raw.githubusercontent.com/microsoft/dev-proxy/main/schemas/v0.14.1/rc.schema.json",
"plugins": [
{
"name": "GenericRandomErrorPlugin",
"enabled": true,
"pluginPath": "~appFolder/plugins/dev-proxy-plugins.dll",
"configSection": "errorsContosoApi",
"urlsToWatch": [
"https://api.contoso.com/*"
]
}
]
}
Tip
Vzhledem k tomu, že každé rozhraní API je jiné, obvykle nakonfigurujete instanci GenericRandomErrorPlugin
rozhraní API pro každé rozhraní API, u kterého chcete simulovat chyby. Pokud chcete usnadnit správu konfigurace, pojmenujte configSection
za rozhraní API, ve které chcete simulovat chyby. Dále zadejte adresy URL, na které chcete ve urlsToWatch
vlastnosti modulu plug-in simulovat chyby. To usnadní správu konfigurace a opakované použití v budoucnu.
Dále nakonfigurujte modul plug-in tak, aby používal soubor obsahující chyby, které chcete simulovat.
{
"errorsContosoApi": {
"errorsFile": "errors-contoso-api.json"
}
}
Nakonec v souboru chyb definujte seznam chybových odpovědí, které chcete simulovat. Pokud například chcete simulovat chybu 500 s vlastní odpovědí JSON, použijte následující konfiguraci:
{
"$schema": "https://raw.githubusercontent.com/microsoft/dev-proxy/main/schemas/v0.14.1/genericrandomerrorplugin.schema.json",
"responses": [
{
"statusCode": 500,
"headers": [
{
"name": "content-type",
"value": "application/json; charset=utf-8"
}
],
"body": {
"code": "InternalServerError",
"message": "Something went wrong"
}
}
]
}
Můžete definovat tolik chybových odpovědí, kolik potřebujete.
Spusťte proxy pro vývoj pomocí konfiguračního souboru a pomocí aplikace se podívejte, jak zpracovává chyby. Pro každý odpovídající požadavek dev proxy určí, jestli se má simulovat chyba nebo předat požadavek do původního rozhraní API s využitím nakonfigurované míry selhání. Když dev proxy simuluje chybu, použije náhodnou chybu z pole chybových odpovědí, které jste definovali v konfiguračním souboru.
Dočasné zakázání napodobení
Pokud v konfiguračním souboru používáte napodobení, můžete je dočasně zakázat pomocí možnosti --no-mocks
.
devproxy --no-mocks
Další krok
Další informace o .GenericRandomErrorPlugin
Váš názor
https://aka.ms/ContentUserFeedback.
Připravujeme: V průběhu roku 2024 budeme postupně vyřazovat problémy z GitHub coby mechanismus zpětné vazby pro obsah a nahrazovat ho novým systémem zpětné vazby. Další informace naleznete v tématu:Odeslat a zobrazit názory pro