Azure Load Testing을 사용하여 부하 테스트에 대한 실패 조건 정의

이 문서에서는 Azure Load Testing을 사용하여 부하 테스트에 대한 실패 조건 또는 자동 중지 조건을 정의하는 방법을 알아봅니다. 실패 조건을 사용하면 로드 중인 애플리케이션에 대한 성능 및 품질 기대치를 정의할 수 있습니다. Azure Load Testing은 오류율 또는 응답 시간과 같은 실패 조건을 정의하는 다양한 클라이언트 메트릭을 지원합니다. 자동 중지 조건을 사용하면 오류율이 지정된 임계값을 초과할 때 부하 테스트를 자동으로 중지할 수 있습니다.

필수 조건

  • 활성 구독이 있는 Azure 계정. Azure 구독이 아직 없는 경우 시작하기 전에 체험 계정을 만듭니다.
  • Azure Load Testing 리소스입니다. Azure Load Testing 리소스를 만들어야 하는 경우 부하 테스트 만들기 및 실행 빠른 시작을 참조하세요.

부하 테스트 실패 조건

부하 테스트 실패 조건은 테스트가 충족해야 하는 클라이언트 쪽 메트릭의 조건입니다. Azure Load Testing의 부하 테스트 수준에서 테스트 조건을 정의합니다. 부하 테스트에는 하나 이상의 테스트 조건이 있을 수 있습니다. 테스트 조건 중 하나 이상이 true로 평가되면 부하 테스트가 실패 상태가 됩니다.

두 가지 수준에서 테스트 조건을 정의할 수 있습니다. 부하 테스트는 여러 수준에서 조건을 결합할 수 있습니다.

  • 부하 테스트 수준에서. 예를 들어, 총 오류 백분율이 임계값을 초과하지 않도록 합니다.
  • JMeter 요청 수준(JMeter 샘플러)에서. 예를 들어 getProducts 요청의 응답 시간 임계값을 지정할 수 있지만 로그인 요청의 응답 시간은 무시할 수 있습니다.

부하 테스트에 대해 최대 50개의 테스트 조건을 정의할 수 있습니다. 동일한 클라이언트 메트릭에 대한 조건이 여러 개인 경우 임계값이 가장 낮은 조건이 사용됩니다.

실패 조건 구조

Azure Load Testing의 실패 조건 형식은 지원되는 메트릭에 대한 조건문 형식을 따릅니다. 예를 들어, 초당 평균 요청 수가 500보다 큰지 확인합니다.

실패 조건의 구조는 다음과 같습니다.

  • 부하 테스트 수준의 테스트 조건: Aggregate_function (client_metric) condition threshold.
  • 특정 JMeter 요청에 적용되는 테스트 조건: Request: Aggregate_function (client_metric) condition threshold.

다음 표에서는 다양한 구성 요소에 대해 설명합니다.

매개 변수 설명
Client metric 필수입니다. 조건을 적용해야 하는 클라이언트 메트릭입니다.
Aggregate function 필수입니다. 클라이언트 메트릭에 적용할 집계 함수입니다.
Condition 필수입니다. greater than 또는 less than과 같은 비교 연산자입니다.
Threshold 필수입니다. 클라이언트 메트릭과 비교할 숫자 값입니다.
Request 선택 사항. 기준이 적용되는 JMeter 스크립트의 샘플러 이름입니다. 요청 이름을 지정하지 않으면 기준이 스크립트의 모든 요청 집계에 적용됩니다.
JMeter 스크립트의 샘플러 이름에 개인 데이터를 포함하지 마세요. 샘플러 이름은 Azure Load Testing 결과 대시보드에 표시됩니다.

실패 조건에 대해 지원되는 클라이언트 메트릭

Azure Load Testing은 다음 클라이언트 메트릭을 지원합니다.

메트릭 집계 함수 Threshold 조건 설명
response_time_ms avg(평균)
min(최소)
max(최대)
pxx(백분위수), xx는 50, 90, 95, 99일 수 있습니다.
밀리초(ms)를 나타내는 정수 값입니다. >(보다 큼)
<(보다 작음)
응답 시간 또는 경과 시간(밀리초)입니다. Apache JMeter 설명서에서 경과 시간에 대해 자세히 알아봅니다.
latency avg(평균)
min(최소)
max(최대)
pxx(백분위수), xx는 50, 90, 95, 99일 수 있습니다.
밀리초(ms)를 나타내는 정수 값입니다. >(보다 큼)
<(보다 작음)
대기 시간(밀리초) Apache JMeter 설명서에서 대기 시간에 대해 자세히 알아봅니다.
error percentage 백분율을 나타내는 0~100 범위의 숫자 값입니다. >(보다 큼) 실패한 요청의 비율입니다.
requests_per_sec avg(평균) 소수점 이하 두 자리까지의 숫자 값입니다. >(보다 큼)
<(보다 작음)
초당 요청 수
requests count 정수 값입니다. >(보다 큼)
<(보다 작음)
총 요청 수입니다.

부하 테스트 실패 조건 정의

이 섹션에서는 Azure Portal에서 부하 테스트에 대한 테스트 조건을 구성합니다.

  1. Azure Portal에서 Azure Load Testing 리소스로 이동합니다.

  2. 왼쪽 창에서 테스트를 선택하여 부하 테스트 목록을 봅니다.

  3. 목록에서 부하 테스트를 선택한 다음 편집을 선택합니다.

    Screenshot of the list of tests for an Azure load testing resource in the Azure portal, highlighting the 'Edit' button.

  4. 테스트 조건 창에서 메트릭, 집계 함수, 조건임계값 값을 테스트.

    Screenshot of the 'Test criteria' pane for a load test in the Azure portal and highlights the fields for adding a test criterion.

    선택적으로 요청 이름 정보를 입력하여 특정 JMeter 요청에 대한 테스트 기준을 추가합니다. 값은 JMX 파일의 JMeter 샘플러 이름과 일치해야 합니다.

    Screenshot of the JMeter user interface, highlighting the request name.

  5. 적용을 선택하여 변경 내용을 저장합니다.

    이제 부하 테스트를 실행하면 Azure Load Testing은 테스트 조건을 사용하여 부하 테스트 실행 상태를 결정합니다.

  6. 테스트를 실행하고 부하 테스트 대시보드에서 상태를 확인합니다.

    대시보드에는 각 테스트 조건과 해당 상태가 표시됩니다. 하나 이상의 기준이 충족되면 전체 테스트 상태가 실패로 표시됩니다.

    Screenshot that shows the test criteria on the load test dashboard.

자동 중지 구성

Azure Load Testing은 오류율이 특정 시간 동안 지정된 임계값을 초과하는 경우 부하 테스트를 자동으로 중지합니다. 예를 들어 자동 중지는 잘못 구성된 엔드포인트 URL로 인해 추가 비용이 발생하는 테스트 실패로부터 사용자를 보호합니다.

부하 테스트 구성에서 자동 중지 기능을 사용하거나 사용하지 않도록 설정하고 오류 비율 임계값 및 시간을 구성할 수 있습니다. 기본적으로 Azure Load Testing은 60초 동안 오류 비율이 90% 이상인 부하 테스트를 자동으로 중지합니다.

JMeter 스크립트의 AutoStop 수신기와 함께 Azure Load Testing 자동 중지 기능을 사용할 수 있습니다. 자동 중지 구성 또는 JMeter AutoStop 수신기의 조건 중 하나라도 충족되면 부하 테스트가 자동으로 중지됩니다.

주의

부하 테스트에 대해 자동 중지를 사용하지 않도록 설정하면 부하 테스트가 잘못 구성된 경우에도 비용이 발생할 수 있습니다.

Azure Portal에서 부하 테스트에 대한 자동 중지를 구성하려면 다음을 수행합니다.

  1. Azure Portal에서 Azure Load Testing 리소스로 이동합니다.

  2. 왼쪽 창에서 테스트를 선택하여 부하 테스트 목록을 봅니다.

  3. 목록에서 부하 테스트를 선택한 다음 편집을 선택합니다. 또는 만들기>Upload a JMeter script(JMeter 스크립트 업로드)를 선택하여 새 테스트를 만듭니다.

  4. Test criteria(테스트 조건) 탭으로 이동하여 자동 중지 기능을 구성합니다.

    • 자동 중지 테스트 컨트롤을 사용하여 부하 테스트 자동 중지를 사용하거나 사용하지 않도록 설정합니다.

    • 자동 중지를 사용하도록 설정하면 Error percentage(오류 비율)Time window(시간) 필드를 작성할 수 있습니다. 시간을 초 단위로 지정합니다.

      Screenshot of the 'Test criteria' pane for a load test in the Azure portal, highlighting the auto stop functionality.

  5. 새 부하 테스트를 만드는 경우 적용 또는 검토 + 만들기를 선택하여 변경 내용을 저장합니다.

다음 단계