다음을 통해 공유


Load Test Administration - Create Or Update Test

테스트 ID를 제공하여 새 테스트를 만들거나 기존 테스트를 업데이트합니다.

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

URI 매개 변수

Name In(다음 안에) 필수 형식 Description
endpoint
path True

string

testId
path True

string

부하 테스트의 고유 테스트 식별자는 소문자 알파벳, 숫자, 밑줄 또는 하이픈 문자만 포함해야 합니다.

regex 패턴: ^[a-z0-9_-]*$

api-version
query True

string

이 작업에 사용할 API 버전입니다.

요청 본문

Media Types: "application/merge-patch+json"

Name 형식 Description
certificate

CertificateMetadata

인증서 메타데이터.

description

string

테스트 설명입니다.

displayName

string

테스트의 표시 이름입니다.

environmentVariables

object

이름, 값> 쌍의 <집합으로 정의된 환경 변수입니다.

keyvaultReferenceIdentityId

string

Key Vault를 참조하는 관리 ID의 리소스 ID입니다.

keyvaultReferenceIdentityType

string

Key Vault를 참조하는 관리 ID의 유형입니다.

loadTestConfiguration

LoadTestConfiguration

부하 테스트 구성입니다.

passFailCriteria

PassFailCriteria

테스트에 대한 실패 조건을 통과합니다.

secrets

<string,  Secret>

비밀은 Azure Key Vault 또는 다른 비밀 저장소에 저장할 수 있습니다. 비밀이 Azure Key Vault 저장된 경우 값은 비밀 식별자여야 하며 형식은 AKV_SECRET_URI 합니다. 비밀이 다른 곳에 저장되면 비밀 값이 직접 제공되어야 하며 형식을 SECRET_VALUE 합니다.

subnetId

string

부하 테스트 인스턴스를 실행해야 하는 서브넷 ID입니다.

응답

Name 형식 Description
200 OK

Test

요청이 성공했습니다.

201 Created

Test

요청이 성공했고 결과적으로 새 리소스가 생성되었습니다.

Other Status Codes

Azure.Core.Foundations.ErrorResponse

예기치 않은 오류 응답입니다.

헤더

x-ms-error-code: string

보안

Oauth2

OAuth 2.0 Flow와 Microsoft Entra ID.

형식: oauth2
Flow: implicit
권한 부여 URL: https://login.microsoftonline.com/common/oauth2/v2.0/authorize

범위

Name Description
https://cnt-prod.loadtesting.azure.com/.default

예제

Create or update a load test

샘플 요청

PATCH https://{endpoint}/tests/12345678-1234-1234-1234-123456789012?api-version=2022-11-01

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

샘플 응답

{
  "testId": "12345678-1234-1234-1234-123456789012",
  "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",
        "actualValue": 10,
        "result": "passed"
      }
    }
  },
  "createdDateTime": "2021-12-05T16:43:46.072Z",
  "createdBy": "user@contoso.com",
  "lastModifiedDateTime": "2021-12-05T16:43:46.072Z",
  "lastModifiedBy": "user@contoso.com",
  "inputArtifacts": {
    "configFileInfo": {
      "url": "https://dummyurl.com/configresource",
      "fileName": "config.yaml",
      "fileType": "ADDITIONAL_ARTIFACTS",
      "expireDateTime": "2021-12-05T16:43:46.072Z",
      "validationStatus": ""
    },
    "testScriptFileInfo": {
      "url": "https://dummyurl.com/testscriptresource",
      "fileName": "sample.jmx",
      "fileType": "JMX_FILE",
      "expireDateTime": "2021-12-05T16:43:46.072Z",
      "validationStatus": "VALIDATION_SUCCESS"
    },
    "userPropFileInfo": {
      "url": "https://dummyurl.com/userpropresource",
      "fileName": "user.properties",
      "fileType": "USER_PROPERTIES",
      "expireDateTime": "2021-12-05T16:43:46.072Z",
      "validationStatus": ""
    },
    "inputArtifactsZipFileInfo": {
      "url": "https://dummyurl.com/inputartifactzipresource",
      "fileName": "inputartifacts.zip",
      "fileType": "ADDITIONAL_ARTIFACTS",
      "expireDateTime": "2021-12-05T16:43:46.072Z",
      "validationStatus": ""
    },
    "additionalFileInfo": []
  },
  "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/Microsoft.ManagedIdentity/userAssignedIdentities/identity1"
}
{
  "testId": "12345678-1234-1234-1234-123456789012",
  "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",
        "actualValue": 10,
        "result": "passed"
      }
    }
  },
  "createdDateTime": "2021-12-05T16:43:46.072Z",
  "createdBy": "user@contoso.com",
  "lastModifiedDateTime": "2021-12-05T16:43:46.072Z",
  "lastModifiedBy": "user@contoso.com",
  "inputArtifacts": {
    "configFileInfo": {
      "url": "https://dummyurl.com/configresource",
      "fileName": "config.yaml",
      "fileType": "ADDITIONAL_ARTIFACTS",
      "expireDateTime": "2021-12-05T16:43:46.072Z",
      "validationStatus": ""
    },
    "testScriptFileInfo": {
      "url": "https://dummyurl.com/testscriptresource",
      "fileName": "sample.jmx",
      "fileType": "JMX_FILE",
      "expireDateTime": "2021-12-05T16:43:46.072Z",
      "validationStatus": "VALIDATION_SUCCESS"
    },
    "userPropFileInfo": {
      "url": "https://dummyurl.com/userpropresource",
      "fileName": "user.properties",
      "fileType": "USER_PROPERTIES",
      "expireDateTime": "2021-12-05T16:43:46.072Z",
      "validationStatus": ""
    },
    "inputArtifactsZipFileInfo": {
      "url": "https://dummyurl.com/inputartifactzipresource",
      "fileName": "inputartifacts.zip",
      "fileType": "ADDITIONAL_ARTIFACTS",
      "expireDateTime": "2021-12-05T16:43:46.072Z",
      "validationStatus": ""
    },
    "additionalFileInfo": []
  },
  "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/Microsoft.ManagedIdentity/userAssignedIdentities/identity1"
}

정의

Name Description
Azure.Core.Foundations.Error

Error 개체.

Azure.Core.Foundations.ErrorResponse

오류 세부 정보가 포함된 응답입니다.

Azure.Core.Foundations.InnerError

오류에 대한 보다 구체적인 정보를 포함하는 개체입니다. Microsoft One API 지침에 따라 - https://github.com/Microsoft/api-guidelines/blob/vNext/Guidelines.md#7102-error-condition-responses.

CertificateMetadata

인증서 메타데이터

CertificateType

지원되는 인증서 유형입니다.

FileStatus

파일 상태.

FileType

지원되는 파일 형식입니다.

LoadTestConfiguration

부하 테스트에 대한 구성입니다.

OptionalLoadTestConfig

빠른 부하 테스트를 위한 구성

PassFailCriteria

테스트에 대한 실패 조건을 통과합니다.

PassFailMetric

통과 실패 메트릭

PFAction

임계값이 충족된 후 수행되는 작업입니다. 기본값은 'continue'입니다.

PFAgFunc

통과/실패 조건에 대한 집계 함수입니다.

PFMetrics

통과/실패 조건에 대한 메트릭입니다.

PFResult

통과/실패 조건 결과입니다.

Secret

비밀

SecretType

지원되는 비밀 유형입니다.

Test

부하 테스트 모델.

TestCreateOrUpdate

부하 테스트 모델.

TestFileInfo

파일 정보를 테스트합니다.

TestInputArtifacts

테스트의 입력 아티팩트입니다.

Azure.Core.Foundations.Error

Error 개체.

Name 형식 Description
code

string

서버 정의 오류 코드 집합 중 하나입니다.

details

Azure.Core.Foundations.Error[]

이 보고된 오류로 이어진 특정 오류에 대한 세부 정보 배열입니다.

innererror

Azure.Core.Foundations.InnerError

오류에 대한 현재 개체보다 더 구체적인 정보를 포함하는 개체입니다.

message

string

사람이 읽을 수 있는 오류 표현입니다.

target

string

오류의 대상입니다.

Azure.Core.Foundations.ErrorResponse

오류 세부 정보가 포함된 응답입니다.

Name 형식 Description
error

Azure.Core.Foundations.Error

Error 개체.

Azure.Core.Foundations.InnerError

오류에 대한 보다 구체적인 정보를 포함하는 개체입니다. Microsoft One API 지침에 따라 - https://github.com/Microsoft/api-guidelines/blob/vNext/Guidelines.md#7102-error-condition-responses.

Name 형식 Description
code

string

서버 정의 오류 코드 집합 중 하나입니다.

innererror

Azure.Core.Foundations.InnerError

내부 오류입니다.

CertificateMetadata

인증서 메타데이터

Name 형식 Description
name

string

인증서의 이름입니다.

type

CertificateType

인증서 유형

value

string

각 형식에 대한 인증서 값

CertificateType

지원되는 인증서 유형입니다.

Name 형식 Description
AKV_CERT_URI

string

인증서가 Azure Key Vault 저장되는 경우

FileStatus

파일 상태.

Name 형식 Description
NOT_VALIDATED

string

파일의 유효성이 검사되지 않습니다.

VALIDATION_FAILURE

string

파일 유효성 검사에 실패했습니다.

VALIDATION_INITIATED

string

파일 유효성 검사가 진행 중입니다.

VALIDATION_NOT_REQUIRED

string

유효성 검사는 필요하지 않습니다.

VALIDATION_SUCCESS

string

파일의 유효성이 검사됩니다.

FileType

지원되는 파일 형식입니다.

Name 형식 Description
ADDITIONAL_ARTIFACTS

string

파일이 지원되는 다른 파일 형식 중 하나도 아닌 경우

JMX_FILE

string

파일이 JMX 스크립트인 경우

USER_PROPERTIES

string

파일이 사용자 속성 파일인 경우.

LoadTestConfiguration

부하 테스트에 대한 구성입니다.

Name 형식 Default value Description
engineInstances

integer

부하 테스트를 실행할 엔진 인스턴스의 수입니다. 지원되는 값의 범위는 1-400입니다. 새 테스트를 만드는 데 필요합니다.

optionalLoadTestConfig

OptionalLoadTestConfig

빠른 부하 테스트를 위한 구성

quickStartTest

boolean

False

true이면 optionalLoadTestConfig가 필요하며 부하 테스트에 대한 JMX 스크립트를 업로드할 필요가 없습니다.

splitAllCSVs

boolean

False

false인 경우 Azure Load Testing은 모든 테스트 엔진 인스턴스에서 수정되지 않은 입력 파일을 복사하고 처리합니다. true인 경우 Azure Load Testing은 CSV 입력 데이터를 모든 엔진 인스턴스에 균등하게 분할합니다. 여러 CSV 파일을 제공하는 경우 각 파일이 균등하게 분할됩니다.

OptionalLoadTestConfig

빠른 부하 테스트를 위한 구성

Name 형식 Description
duration

integer

실행 기간(초)을 테스트합니다.

endpointUrl

string

URL을 테스트합니다. 전체 HTTP URL을 제공합니다. 예를 들어 https://contoso-app.azurewebsites.net/login

rampUpTime

integer

시간(초)을 증가합니다.

virtualUsers

integer

동시 가상 사용자가 없습니다.

PassFailCriteria

테스트에 대한 실패 조건을 통과합니다.

Name 형식 Description
passFailMetrics

<string,  PassFailMetric>

ID의 맵 및 통과 실패 메트릭 { id : pass fail metrics }.

PassFailMetric

통과 실패 메트릭

Name 형식 Default value Description
action

PFAction

continue

임계값이 충족된 후 수행되는 작업입니다. 기본값은 'continue'입니다.

actualValue

number

테스트 실행에 대한 클라이언트 메트릭의 실제 값입니다.

aggregate

PFAgFunc

클라이언트 메트릭에 적용할 집계 함수입니다. 허용되는 함수

  • 'percentage' - 오류 메트릭 , 'avg', 'p50', 'p90', 'p95', 'p99', 'min', 'max' - response_time_ms 및 대기 시간 메트릭의 경우 'avg' - requests_per_sec , 'count' - 요청
clientMetric

PFMetrics

조건을 적용할 클라이언트 메트릭입니다.

condition

string

비교 연산자입니다. 지원되는 형식 ''>, '<'

requestName

string

통과 실패 조건을 적용해야 하는 요청 이름

result

PFResult

테스트 실행의 결과입니다.

value

number

클라이언트 메트릭과 비교할 값입니다. 허용되는 값 - 'error: [0.0 , 100.0] unit- % ', response_time_ms 및 대기 시간 : 모든 정수 값 unit- ms.

PFAction

임계값이 충족된 후 수행되는 작업입니다. 기본값은 'continue'입니다.

Name 형식 Description
continue

string

통과 실패 메트릭 조건 메트릭이 실패하더라도 테스트는 계속 실행됩니다.

stop

string

통과 실패 조건 메트릭이 전달되지 않으면 테스트 실행이 중지됩니다.

PFAgFunc

통과/실패 조건에 대한 집계 함수입니다.

Name 형식 Description
avg

string

평균 값에 조건이 적용됩니다.

count

string

개수 값에 조건이 적용됩니다.

max

string

최대값에 대한 조건이 적용됩니다.

min

string

최소값에 대한 조건이 적용됩니다.

p50

string

기준은 50번째 백분위수 값에 적용됩니다.

p90

string

조건은 90번째 백분위수 값에 적용됩니다.

p95

string

조건은 95번째 백분위수 값에 적용됩니다.

p99

string

조건은 99번째 백분위수 값에 적용됩니다.

percentage

string

기준은 지정된 백분율 값에 적용됩니다.

PFMetrics

통과/실패 조건에 대한 메트릭입니다.

Name 형식 Description
error

string

오류 메트릭에 대한 실패 조건을 전달합니다.

latency

string

대기 시간 메트릭에 대한 실패 조건을 밀리초 단위로 전달합니다.

requests

string

총 요청에 대한 실패 조건을 전달합니다.

requests_per_sec

string

초당 요청에 대한 실패 조건을 전달합니다.

response_time_ms

string

응답 시간 메트릭에 대한 실패 조건을 밀리초 단위로 전달합니다.

PFResult

통과/실패 조건 결과입니다.

Name 형식 Description
failed

string

지정된 통과 실패 조건 메트릭이 실패했습니다.

passed

string

지정된 통과 실패 조건 메트릭이 통과했습니다.

undetermined

string

지정된 통과 실패 조건 메트릭을 확인할 수 없습니다.

Secret

비밀

Name 형식 Description
type

SecretType

비밀 유형

value

string

해당 형식의 비밀 값입니다.

SecretType

지원되는 비밀 유형입니다.

Name 형식 Description
AKV_SECRET_URI

string

비밀이 Azure Key Vault 저장되는 경우

SECRET_VALUE

string

일반 텍스트로 제공되는 비밀 값인 경우

Test

부하 테스트 모델.

Name 형식 Description
certificate

CertificateMetadata

인증서 메타데이터.

createdBy

string

만든 사용자입니다.

createdDateTime

string

생성 날짜/시간(RFC 3339 리터럴 형식)입니다.

description

string

테스트 설명입니다.

displayName

string

테스트의 표시 이름입니다.

environmentVariables

object

이름, 값> 쌍 집합<으로 정의된 환경 변수입니다.

inputArtifacts

TestInputArtifacts

테스트의 입력 아티팩트입니다.

keyvaultReferenceIdentityId

string

Key Vault를 참조하는 관리 ID의 리소스 ID입니다.

keyvaultReferenceIdentityType

string

Key Vault를 참조하는 관리 ID의 유형입니다.

lastModifiedBy

string

마지막으로 수정한 사용자입니다.

lastModifiedDateTime

string

마지막으로 수정된 날짜/시간(RFC 3339 리터럴 형식)입니다.

loadTestConfiguration

LoadTestConfiguration

부하 테스트 구성입니다.

passFailCriteria

PassFailCriteria

테스트에 대한 실패 조건을 통과합니다.

secrets

<string,  Secret>

비밀은 Azure Key Vault 또는 다른 비밀 저장소에 저장할 수 있습니다. 비밀이 Azure Key Vault 저장된 경우 값은 비밀 식별자여야 하며 형식은 AKV_SECRET_URI 합니다. 비밀이 다른 곳에 저장되면 비밀 값을 직접 제공해야 하며 형식을 SECRET_VALUE 합니다.

subnetId

string

부하 테스트 인스턴스를 실행해야 하는 서브넷 ID입니다.

testId

string

부하 테스트에 대한 고유 테스트 식별자는 소문자 알파벳, 숫자, 밑줄 또는 하이픈 문자만 포함해야 합니다.

TestCreateOrUpdate

부하 테스트 모델.

Name 형식 Description
certificate

CertificateMetadata

인증서 메타데이터.

description

string

테스트 설명입니다.

displayName

string

테스트의 표시 이름입니다.

environmentVariables

object

이름, 값> 쌍 집합<으로 정의된 환경 변수입니다.

keyvaultReferenceIdentityId

string

Key Vault를 참조하는 관리 ID의 리소스 ID입니다.

keyvaultReferenceIdentityType

string

Key Vault를 참조하는 관리 ID의 유형입니다.

loadTestConfiguration

LoadTestConfiguration

부하 테스트 구성입니다.

passFailCriteria

PassFailCriteria

테스트에 대한 실패 조건을 통과합니다.

secrets

<string,  Secret>

비밀은 Azure Key Vault 또는 다른 비밀 저장소에 저장할 수 있습니다. 비밀이 Azure Key Vault 저장된 경우 값은 비밀 식별자여야 하며 형식은 AKV_SECRET_URI 합니다. 비밀이 다른 곳에 저장되면 비밀 값을 직접 제공해야 하며 형식을 SECRET_VALUE 합니다.

subnetId

string

부하 테스트 인스턴스를 실행해야 하는 서브넷 ID입니다.

TestFileInfo

파일 정보를 테스트합니다.

Name 형식 Description
expireDateTime

string

파일의 만료 시간(RFC 3339 리터럴 형식)

fileName

string

파일의 이름입니다.

fileType

FileType

파일 형식

url

string

파일 URL입니다.

validationFailureDetails

string

유효성 검사 실패 오류 세부 정보

validationStatus

FileStatus

파일의 유효성 검사 상태

TestInputArtifacts

테스트의 입력 아티팩트입니다.

Name 형식 Description
additionalFileInfo

TestFileInfo[]

테스트 실행에 지원되는 추가 파일

configFileInfo

TestFileInfo

파일 정보

inputArtifactsZipFileInfo

TestFileInfo

파일 정보

testScriptFileInfo

TestFileInfo

파일 정보

userPropFileInfo

TestFileInfo

파일 정보