Пример отчета о состоянии выполнения

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

Вы можете сообщить о состоянии выполнения одного или нескольких тестовых планов в Power BI. Отчет, создаваемый с помощью сведений в этой статье, аналогичен следующему изображению и сводной диаграмме состояния теста Track — отчет о ходе выполнения.

Снимок экрана: отчеты о ходе выполнения плана тестирования Power BI.

В этом отчете отображаются две кольцевые диаграммы, которые суммируют планы тестирования, выполненные и не выполняются, а также состояние выполненных тестовых планов.

  • Выполнено и не выполнено
    • Выполнено: сумма и процент выполняемых тестовых случаев.
    • NotExecuted: сумма и процент тестовых случаев, которые не выполнялись.
  • Разделение по результату
    • Передано: сумма и процент тестовых случаев, прошедших.
    • Заблокировано: сумма и процент тестовых случаев, которые в настоящее время заблокированы.
    • Сбой: сумма и процент тестовых случаев, которые завершились сбоем при выполнении.
    • NotApplicable: сумма и процент тестовых случаев, которые не выполнялись.

Ответы на вопросы отчета

Общий отчет о состоянии выполнения помогает отслеживать ход выполнения команды в отношении планового тестирования продукта или службы, отвечая на следующие вопросы:

  • Сколько тестов завершено?
  • Что такое текущее состояние тестов, передаваемых, неудачных или заблокированных?

Внимание

Интеграция Power BI и доступ к веб-каналу OData службы Аналитики общедоступны для Azure DevOps Services и Azure DevOps Server 2020 и более поздних версий. Примеры запросов, указанные в этой статье, допустимы только для Azure DevOps Server 2020 и более поздних версий, и зависят от версии 3.0-preview или более поздней версии. Мы рекомендуем вам использовать эти запросы и предоставлять нам отзывы.

Необходимые компоненты

Примечание.

В этой статье предполагается, что вы читаете обзор примеров отчетов с помощью запросов OData и имеет базовое представление о Power BI.

Чтобы отчет создавал полезные данные, команда должна выполнять следующие действия для управления планами тестирования:

  • Определите планы тестирования, наборы тестов и тестовые случаи. Укажите их состояние. Для запуска набора тестов он должен находиться в состоянии "Ход выполнения". Для запуска тестового случая он должен находиться в состоянии готовности. Дополнительные сведения см. в разделе "Создание тестовых случаев вручную".

  • Запустите тесты вручную и проверьте результаты. Пометьте результаты каждого шага проверки в тестовом случае как переданные или неудачные. Дополнительные сведения см. в разделе "Выполнение ручных тестов".

    Примечание.

    Тестировщики должны пометить тестовый шаг с состоянием, если это тестовый шаг проверки. Общий результат теста отражает состояние всех этапов тестирования, помеченных. Таким образом, тест будет иметь состояние сбоя, если любой шаг теста помечен как неудачный или не помечен.

Примеры запросов

Можно использовать следующие запросы набора сущностей TestPoints для создания различных, но аналогичных отчетов о ходе выполнения тестового плана.

Примечание.

Сведения о доступных свойствах для фильтрации или отчета см . в справочнике по метаданным для аналитики планов тестирования. Вы можете отфильтровать запросы или возвращать свойства с помощью любого из Property значенийEntityType, доступных в разделе EntitySetили NavigationPropertyBinding Path значениях. Каждое EntitySet соответствует .EntityType Дополнительные сведения о типе данных каждого значения см. в метаданных, предоставленных для соответствующего EntityTypeзначения.

Скопируйте и вставьте следующий запрос Power BI непосредственно в окно получения пустого запроса данных>. Дополнительные сведения см. в разделе "Обзор примеров отчетов с помощью запросов OData".

let 
    Source = OData.Feed ("https://analytics.dev.azure.com/{organization}/{project}/_odata/v3.0-preview/TestPoints?" 
        &"$apply=filter(TestSuite/TestPlanTitle eq '{testPlanTitle}')" 
        &"/aggregate(" 
            &"$count as TotalCount," 
            &"cast(LastResultOutcome eq 'Passed', Edm.Int32) with sum as Passed," 
            &"cast(LastResultOutcome eq 'Failed', Edm.Int32) with sum as Failed," 
            &"cast(LastResultOutcome eq 'Blocked', Edm.Int32) with sum as Blocked," 
            &"cast(LastResultOutcome eq 'NotApplicable', Edm.Int32) with sum as NotApplicable," 
            &"cast(LastResultOutcome eq 'None', Edm.Int32) with sum as NotExecuted," 
            &"cast(LastResultOutcome ne 'None', Edm.Int32) with sum as Executed" 
        &")/compute(" 
            &"Executed mul 100 div TotalCount as ExecPct," 
            &"iif(TotalCount gt NotExecuted, Passed mul 100 div Executed,0) as PassedPct" 
        &")", null, [Implementation="2.0"]) 
in 
    Source

Строки подстановки и разбивка запросов

Замените следующие строки значениями. Не включайте скобки в подстановку {} . Например, если вашей организации присвоено имя Fabrikam, замените {organization} на Fabrikam, а не {Fabrikam}.

  • {organization} — Название организации
  • {project} — Имя проекта группы или полностью опустите "/{project}" для межпроектного запроса
  • {testPlanTitle} — заголовок тестового плана, данные которого необходимо вернуть.

Разбивка запросов

В следующей таблице описана каждая часть запроса.

Часть запроса

Description


filter((TestSuite/TestPlanTitle eq '{testPlanTitle}'))

Возвращать данные только для выбранного тестового плана. Можно добавить несколько планов с предложением, например filter((TestSuite/TestPlanTitle eq '{testPlanTitle1}' or TestSuite/TestPlanTitle eq '{testPlanTitle2}')). Вы также можете применить любые другие фильтры, связанные с наборами тестов, конфигурации тестов здесь.

/aggregate($count as TotalCount,

Агрегируйте данные по отфильтрованным точкам тестирования с числом как TotalCount.

cast(LastResultOutcome eq 'Passed', Edm.Int32) with sum as Passed

При агрегирование точек тестирования типа с последним результатом выполнения "Передано" до 1 и суммирует их какPassed "" метрики.

/compute(Executed mul 100 div TotalCount as ExecPct.

Укажите вычисляемую метрику ExecPct , равную (выполненные точки тестирования / общее число * 100).

(Необязательно) Переименование запроса

Вы можете переименовать метку запроса по умолчанию, query1, в что-то более понятное. Просто введите новое имя в области параметров запроса.

Снимок экрана: параметры меню запроса Power BI, переименование запроса.

Изменение типа данных столбца

В Редактор Power Query выберите TotalCount столбец и все остальные столбцы, а затем выберите тип данных в меню "Преобразование" и выберите "Целое число". Дополнительные сведения об изменении типа данных см. в разделе "Аналитика преобразования" для создания отчетов Power BI, преобразования типа данных столбца.

(Необязательно) Переименование полей столбцов

Можно переименовать поля столбцов. Например, можно переименовать столбец NotApplicable в Not Applicable,или TotalCount в Total Count. Сведения о том, как это сделать, см. в разделе "Переименовать поля столбцов".

Закройте запрос и примените изменения

Завершив все преобразования данных, нажмите кнопку "Закрыть" и "Применить " из меню "Главная ", чтобы сохранить запрос и вернуться на вкладку "Отчет " в Power BI.

Снимок экрана: параметр Редактор Power Query Закрыть и применить.

Создание отчета диаграммы Кольцевой диаграммы

  1. В Power BI в разделе "Визуализации" выберите отчет Donut .

    Снимок экрана: выбор полей визуализации для отчета о ходе выполнения теста.

  2. Чтобы создать кольцевую диаграмму выполненных v/s Not executed, добавьте следующие поля в значения в указанном порядке.

    • Executed
    • NotExecuted.
  3. Чтобы создать кольцевую диаграмму по результату, добавьте следующие поля в значения в указанном порядке.

    • Passed
    • Failed
    • Blocked
    • NotApplicable
    • и другие возможности.

На следующем рисунке показан итоговый отчет.

Снимок экрана: отчет о ходе выполнения тестового плана Power BI.