Tworzenie testu obciążeniowego w zasobie usługi Azure Load Testing

Test określa skrypt testowy i ustawienia konfiguracji do uruchamiania testu obciążeniowego. Możesz utworzyć co najmniej jeden test w zasobie usługi Azure Load Testing.

Konfiguracja testu obciążeniowego składa się z:

W usłudze Azure Load Testing tworzenie testu obciążeniowego i przekazywanie plików są rozłączone, tj. są to oddzielne operacje interfejsu API. W sekcji przedstawiono kroki związane z tworzeniem testu obciążeniowego.

  1. Uzyskaj identyfikator URI punktu końcowego lub płaszczyzny danych dla zasobu testowania obciążenia platformy Azure, jak wspomniano tutaj.

  2. Tworzenie nowego testu

    PATCH https://{Endpoint}/tests/{testId}?api-version=2022-11-01
    

    W przypadku klienta wysyłającego żądanie z tym podpisem zostanie wykonana operacja Administracja testem obciążeniowym — tworzenie lub aktualizowanie testu .

    Pomyślna odpowiedź na żądanie złożone przy użyciu tego podpisu będzie podobna do następującej:

    {
      "description": "sample description",
      "displayName": "Performance_LoadTest",
      "loadTestConfiguration": {
        "engineInstances": 6,
        "splitAllCSVs": true
      },
      "passFailCriteria": {
        "passFailMetrics": {
          "fefd759d-7fe8-4f83-8b6d-aeebe0f491fe": {
            "clientMetric": "response_time_ms",
            "aggregate": "percentage",
            "condition": ">",
            "value": 20,
            "action": "continue"
          }
        }
      },
      "secrets": {
        "secret1": {
          "value": "https://samplevault.vault.azure.net/secrets/samplesecret/f113f91fd4c44a368049849c164db827",
          "type": "AKV_SECRET_URI"
        }
      },
      "environmentVariables": {
        "envvar1": "sampletext"
      },
      "subnetId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/samplerg/providers/Microsoft.Network/virtualNetworks/samplenetworkresource/subnets/AAAAA0A0A0",
      "keyvaultReferenceIdentityType": "UserAssigned",
      "keyvaultReferenceIdentityId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/samplerg/providers/sampleprovider/sampleresourcetype/sampleresourcename"
    }
    

    Spowoduje to zaktualizowanie szczegółów testu, takich jak nazwa testu, opis, wpisy tajne, zmienne środowiskowe, liczba aparatów i kryteria zaliczenia/niepowodzenia.

  3. Przesyłanie plików do utworzonego testu

    PUT https://{Endpoint}/tests/{testId}/files/{fileName}?api-version=2022-11-01
    

    lub

    PUT https://{Endpoint}/tests/{testId}/files/{fileName}?fileType={fileType}&api-version=2022-11-01
    

    W przypadku klienta wysyłającego żądanie z tym podpisem zostanie wykonana operacja Administracja testem obciążeniowym — przekazywanie pliku testowego .

    Uwaga / Notatka

    Każde wywołanie PUT obsługuje tylko 1 plik do przekazania. Jeśli wiele plików zostanie przekazanych w tym samym wywołaniu, wszystkie pliki oprócz pierwszego zostaną odrzucone. W zależności od wymagań, może być konieczne wykonanie wielu wywołań, po jednym dla każdego, tj. skryptu JMX, pliku ZIP, pliku CSV, user.properties itp.

    Przesłany plik JMX jest sprawdzany, czy jest zgodny z normami XML i czy jest prawidłowym skryptem JMeter. W polu validationStatus jest wyświetlany stan walidacji. Jeśli JMeter jest w stanie zaakceptować skrypt JMX bez żadnych błędów, jest on uważany za "VALIDATION_SUCCESS", a plik jest pomyślnie skojarzony z testem obciążeniowym. We wszystkich kolejnych przebiegach testowych ten plik będzie używany.

    Pomyślna odpowiedź na żądanie złożone przy użyciu tego podpisu będzie podobna do następującej:

        {
      "url": "https://dummyurl.com/testscriptresource",
      "fileName": "sample.jmx",
      "fileType": "ADDITIONAL_ARTIFACTS",
      "expireDateTime": "2021-12-05T16:43:46.072Z",
      "validationStatus": "VALIDATION_SUCCESS"
    }
    
  4. Skonfiguruj składniki aplikacji w teście na potrzeby monitorowania metryk po stronie serwera, wykonując następujące kroki.

    PATCH https://{Endpoint}/tests/{testId}/app-components?api-version=2022-11-01
    

    W przypadku klienta wysyłającego żądanie z tym podpisem zostanie wykonana operacja Administracja testem obciążeniowym — tworzenie lub aktualizowanie składników aplikacji . Treść żądania powinna zawierać element testId lub testRunId.

    Pomyślna odpowiedź na żądanie złożone przy użyciu tego podpisu będzie podobna do następującej:

        {
      "testId": "12345678-1234-1234-1234-123456789012",
      "components": {
        "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/samplerg/providers/microsoft.insights/components/appcomponentresource": {
          "resourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/samplerg/providers/microsoft.insights/components/appcomponentresource",
          "resourceType": "microsoft.insights/components",
          "resourceName": "appcomponentresource",
          "displayName": "Performance_LoadTest_Insights",
          "resourceGroup": "samplerg",
          "subscriptionId": "00000000-0000-0000-0000-000000000000",
          "kind": "web"
        }
      },
      "createdDateTime": "2021-12-05T16:43:46.072Z",
      "createdBy": "user@contoso.com",
      "lastModifiedDateTime": "2021-12-05T16:43:46.072Z",
      "lastModifiedBy": "user@contoso.com"
    }