테스트 샘플 보고서의 통과 속도 추세

Azure DevOps Services | Azure DevOps Server 2022 | Azure DevOps Server 2020

통과 속도 추세 보고서는 파이프라인 실행 중에 특정 테스트를 실행하는 데 걸리는 평균 시간에 대한 인사이트를 제공합니다.

예제가 다음 이미지에 표시됩니다.

통과률 추세 보고서의 스크린샷.

Important

Analytics Service의 OData 피드대한 Power BI 통합 및 액세스는 일반적으로 Azure DevOps Services 및 Azure DevOps Server 2020 이상 버전에서 사용할 수 있습니다. 이 문서에서 제공하는 샘플 쿼리는 Azure DevOps Server 2020 이상 버전에 대해서만 유효하며 v3.0 미리 보기 이상 버전에 따라 달라집니다. 이러한 쿼리를 사용하고 피드백을 제공하는 것이 좋습니다.

필수 조건

  • 분석 데이터를 보고 서비스를 쿼리하려면 기본 액세스 이상의 프로젝트 멤버여야 합니다. 기본적으로 모든 프로젝트 멤버에는 분석을 쿼리하고 분석 뷰를 정의할 수 있는 권한이 부여됩니다.
  • 서비스 및 기능 사용 및 일반 데이터 추적 활동과 관련된 다른 필수 구성 요소에 대해 알아보려면 분석에 액세스하기 위한 사용 권한 및 필수 구성 요소를 참조 하세요.

참고 항목

이 문서에서는 OData 쿼리를 사용하여 샘플 보고서 개요를 읽었 으며 Power BI에 대한 기본적인 이해를 가지고 있다고 가정합니다 .

샘플 쿼리

참고 항목

이 문서에서는 OData 쿼리를 사용하여 샘플 보고서 개요를 읽었 으며 Power BI에 대한 기본적인 이해를 가지고 있다고 가정합니다 .

아래에 나열된 Power BI 쿼리를 데이터> 비어 있는 쿼리 가져오기 창에 직접 붙여넣을 수 있습니다. 자세한 내용은 OData 쿼리를 사용하는 샘플 보고서의 개요를 검토 하세요.

let
   Source = OData.Feed ("https://analytics.dev.azure.com/{organization}/{project}/_odata/v4.0-preview/TestResultsDaily?
$apply=filter("
                &"Pipeline/PipelineName eq '{pipelineName}' "
                &"And Date/Date ge {startdate} "
        &"And Test/TestName eq '{testName}' "
        &"And Workflow eq 'Build') "
            &"/groupby((Date/Date), "
                &"aggregate( "
                &"ResultCount with sum as TotalCount, "
            &"ResultPassCount with sum as ResultPassCount, "
                &"ResultFailCount with sum as ResultFailCount, "
            &"ResultAbortedCount with sum as ResultAbortedCount, "
        &"ResultErrorCount with sum as ResultErrorCount, "
    &"ResultInconclusiveCount with sum as ResultInconclusiveCount, "
    &"ResultNotExecutedCount with sum as ResultNotExecutedCount, "
    &"ResultNotImpactedCount with sum as ResultNotImpactedCount)) "
    &"/filter(ResultFailCount gt 0) "
    &"/compute( "
    &"iif(TotalCount gt ResultNotExecutedCount, ((ResultPassCount add ResultNotImpactedCount) div cast(TotalCount sub ResultNotExecutedCount, Edm.Decimal)) mul 100, 0) as PassRate) "
    ,null, [Implementation="2.0",OmitValues = ODataOmitValues.Nulls,ODataVersion = 4]) 
in
    Source

대체 문자열 및 쿼리 분석

다음 문자열을 값으로 바꿉니다. 대괄호를 대체에 {} 포함하지 마세요. 예를 들어 조직 이름이 "Fabrikam"{organization}Fabrikam{Fabrikam}인 경우 .

 

  • {organization} - 조직 이름
  • {project} - 팀 프로젝트 이름
  • {pipelinename} - 파이프라인 이름입니다. 예: Fabrikam hourly build pipeline
  • {testName} - 테스트 이름
  • {startdate} - 보고서를 시작할 날짜입니다. 형식: YYYY-MM-DDZ. 예: 2021-09-01Z 2021년 9월 1일을 나타냅니다. 따옴표나 대괄호로 묶지 말고 월과 날짜 둘 다에 두 숫자를 사용합니다.

쿼리 분석

다음 표에서는 쿼리의 각 부분을 설명합니다.

쿼리 파트

설명


$apply=filter(

Start filter() 절입니다.

Pipeline/PipelineName eq '{pipelineName}'

지정된 파이프라인에 대한 테스트 실행 반환

And Date/Date ge {startdate}

반환 테스트는 지정된 날짜 또는 그 이후에 실행됩니다.

And Test/TestName eq '{testName}'

반환 테스트는 지정된 테스트 이름에 대해서만 실행됩니다.

and Workflow eq 'Build'

워크플로에 대한 Build 테스트 실행을 반환합니다.

)

Close filter() 절입니다.

/groupby(

Start groupby() 절입니다.

(Date/Date),

테스트 실행 완료 날짜를 기준으로 그룹화합니다.

aggregate(

필터 조건과 일치하는 다양한 테스트 실행 결과를 합산하는 시작 aggregate 절입니다.

ResultCount with sum as TotalCount,

총 테스트 실행 수를 .로 TotalCount계산합니다.

ResultPassCount with sum as ResultPassCount,

통과된 총 테스트 실행 수를 .로 ResultPassCount계산합니다.

ResultFailCount with sum as ResultFailCount,

실패한 총 테스트 실행 수를 .로 ResultFailCount계산합니다.

ResultAbortedCount with sum as ResultAbortedCount,

중단된 총 테스트 실행 수를 .로 ResultAbortedCount계산합니다.

ResultErrorCount with sum as ResultErrorCount,

오류가 ResultErrorCount있는 것으로 표시된 총 테스트 실행 수를 계산합니다.

ResultNotExecutedCount with sum as ResultNotExecutedCount,

실행되지 않은 테스트 실행의 총 수를 .로 ResultNotExecutedCount계산합니다.

ResultNotImpactedCount with sum as ResultNotImpactedCount

영향을 받지 않는 테스트 실행의 총 수를 .로 ResultNotImpactedCount계산합니다.

))

aggregate() 기 및 groupby() 절입니다.

/compute(

Start compute() 절입니다.

iif(TotalCount gt ResultNotExecutedCount, ((ResultPassCount add ResultNotImpactedCount) div cast(TotalCount sub ResultNotExecutedCount, Edm.Decimal)) mul 100, 0) as PassRate)

모든 날짜에 대해 .를 계산합니다 PassRate .

)

Close compute() 절입니다.

(선택 사항) 쿼리 이름 바꾸기

기본 쿼리 레이블인 Query1의 이름을 좀 더 의미 있는 것으로 바꿀 수 있습니다. 쿼리 설정 창에서 새 이름을 입력하기만 하면됩니다.

Power BI 쿼리 메뉴 옵션, 쿼리 이름 바꾸기 스크린샷

Power BI에서 날짜 열 확장

Date 열을 확장하여 확장된 엔터티를 표시합니다CompletedOn.Date. 열을 확장하면 레코드가 특정 필드로 평면화됩니다. 방법을 알아보려면 분석 데이터 변환을 참조 하여 Power BI 보고서를 생성하고 열을 확장합니다.

열 데이터 형식 변경

  1. Power Query 편집기 열을 선택하고 TotalCount 변환 메뉴에서 데이터 형식선택한 다음 정수를 선택합니다.

  2. PassRate열을 선택하고 변환 메뉴에서 데이터 형식선택한 다음 10진수를 선택합니다.

데이터 형식 변경에 대한 자세한 내용은 분석 데이터 변환을 참조 하여 Power BI 보고서를 생성하고 열 데이터 형식을 변환합니다.

쿼리를 닫고 변경 내용 적용

모든 데이터 변환을 완료한 후 홈 메뉴에서 닫기 및 적용 을 선택하여 쿼리를 저장하고 Power BI의 보고서 탭으로 돌아갑니다.

Power Query 편집기 닫기 및 적용 옵션의 스크린샷

꺾은선형 및 스택 세로 막대형 차트 보고서 만들기

  1. Power BI의 시각화에서 꺾은선형 및 스택 세로 막대형 차트를 선택하고 필드를 차트 영역으로 끌어서 놓습니다.

    통과 속도 추세 기간 테이블 보고서에 대한 시각화 필드 선택 스크린샷

  2. X축에 추가하고 Date.Date 필드를 마우스 오른쪽 단추로 클릭하고 날짜 계층이 아닌 Date.Date 선택합니다.

  3. 열 y축추가 및 ResultFailCount 추가 ResultPassCount 합니다.

  4. 선 y 축추가 PassRate 합니다.

보고서는 다음 이미지와 비슷해야 합니다.

샘플 통과률 추세 보고서의 스크린샷.

테스트 작업 리소스