Share via


Uygulamamı rastgele hatalarla test etme

Uygulama oluştururken uygulamanızın API hatalarını nasıl işlediğini test etmelisiniz. Geliştirme Proxy'si , GenericRandomErrorPlugin kullanarak uygulamanızda kullandığınız tüm API'lerde hataların benzetimini yapmanızı sağlar.

Herhangi bir API'de hataların benzetimini yapın

Başlamak için yapılandırma dosyanızda öğesini GenericRandomErrorPlugin etkinleştirin.

{
  "$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/*"
      ]
    }
  ]
}

İpucu

Her API farklı olduğundan genellikle hataların benzetimini GenericRandomErrorPlugin yapmak istediğiniz her API için bir örneğini yapılandırabilirsiniz. Yapılandırmayı yönetmeyi kolaylaştırmak için, hataların benzetimini configSection yapmak istediğiniz API'nin adını verin. Ayrıca, eklentiyle özelliğinde hataların benzetimini urlsToWatch yapmak istediğiniz URL'leri belirtin. Bu, yapılandırmayı yönetmeyi ve gelecekte yeniden kullanılmasını kolaylaştırır.

Ardından, eklentiyi benzetimini yapmak istediğiniz hataları içeren bir dosya kullanacak şekilde yapılandırın.

{
  "errorsContosoApi": {
    "errorsFile": "errors-contoso-api.json"
  }
}

Son olarak, hatalar dosyasında benzetimini yapmak istediğiniz hata yanıtlarının listesini tanımlayın. Örneğin, özel bir JSON yanıtıyla 500 hatasının benzetimini yapmak için aşağıdaki yapılandırmayı kullanın:

{
  "$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"
      }
    }
  ]
}

İhtiyacınız olan sayıda hata yanıtı tanımlayabilirsiniz.

Geliştirme Proxy'sini yapılandırma dosyanızla başlatın ve hataları nasıl işlediğini görmek için uygulamanızı kullanın. Her eşleşen istek için Dev Proxy, yapılandırılmış hata oranını kullanarak bir hatanın benzetimini mi yoksa isteğin özgün API'ye mi geçirileceğini belirler. Geliştirme Proxy'si bir hatanın benzetimini yaparken, yapılandırma dosyasında tanımladığınız hata yanıtları dizisinden rastgele bir hata kullanır.

Sahteleri geçici olarak devre dışı bırakma

Yapılandırma dosyanızda sahteleri kullanıyorsanız, seçeneğini kullanarak --no-mocks bunları geçici olarak devre dışı bırakabilirsiniz.

devproxy --no-mocks

Sonraki adım

hakkında GenericRandomErrorPlugindaha fazla bilgi edinin.