Ukázková sestava souhrnu testů
Azure DevOps Services | Azure DevOps Server 2022 | Azure DevOps Server 2020
Když spustíte spuštění kanálu a zahrnete testovací úlohy v definici kanálu, můžete vytvořit sestavu, která označuje počet spuštění testů pro různé výsledky testu: Úspěšné, Neúspěšné, Nespusené, Ovlivněné.
Následující obrázek ukazuje příklad souhrnné sestavy testu.
Pomocí dotazů uvedených v tomto článku vygenerujte následující sestavy:
- Souhrn testů pro pracovní postup sestavení
- Souhrn testů pro pracovní postup vydání
- Souhrn testů pro určitou větev
- Souhrn testů pro konkrétní testovací soubor
- Souhrn testů pro konkrétního vlastníka testu
Důležité
Integrace Power BI a přístup k datovému kanálu OData služby Analytics jsou obecně dostupné pro Azure DevOps Services a Azure DevOps Server 2020 a novější verze. Ukázkové dotazy uvedené v tomto článku jsou platné pouze pro Azure DevOps Server 2020 a novější verze a závisí na verzi v3.0-Preview nebo novější. Doporučujeme, abyste tyto dotazy používali a poskytli nám zpětnou vazbu.
Požadavky
- Přístup: Buďte členem projektu s alespoň základním přístupem.
- Oprávnění: Ve výchozím nastavení mají členové projektu oprávnění k dotazování na Analýzy a vytváření zobrazení.
- Další informace o dalších požadavcích týkajících se povolení služeb a funkcí a obecných aktivit sledování dat najdete v tématu Oprávnění a požadavky pro přístup k Analýzám.
Poznámka:
Tento článek předpokládá, že si přečtete přehled ukázkových sestav pomocí dotazů OData a máte základní znalosti o Power BI.
Vzorové dotazy
Následující dotazy sady entit můžete použít k vytvoření různých, ale podobných TestResultsDaily
sestav souhrnů testů kanálu. Sada TestResultsDaily
entit poskytuje denní agregaci TestResult
snímků spuštění seskupených podle testu.
Poznámka:
Informace o dostupných vlastnostech pro účely filtru nebo sestavy najdete v referenčních informacích k metadatům pro analýzu testovacích plánů a metadata pro Azure Pipelines. Dotazy můžete filtrovat nebo vracet vlastnosti pomocí libovolné hodnoty Property
pod hodnotami nebo NavigationPropertyBinding Path
hodnotami dostupnými v objektu EntitySet
EntityType
. Každý EntitySet
odpovídá hodnotě EntityType
. Další informace o datovém typu každé hodnoty najdete v metadatech zadaných pro odpovídající EntityType
hodnotu .
Souhrn testů pro pracovní postup sestavení
Pomocí následujících dotazů zobrazíte souhrn testů kanálu pro pracovní postup sestavení .
Zkopírujte a vložte následující dotaz Power BI přímo do okna Získat>prázdné dotazy . Další informace najdete v tématu Přehled ukázkových sestav pomocí dotazů OData.
let
Source = OData.Feed (
"https://analytics.dev.azure.com/mseng/AzureDevOps/_odata/v4.0-preview/TestResultsDaily?"
&"$apply=filter("
&"Pipeline/PipelineName eq '{pipelineName}' "
&"And DateSK ge {startdate} "
&"And Workflow eq 'Build' "
&")/aggregate("
&"ResultCount with sum as ResultCount, "
&"ResultPassCount with sum as ResultPassCount, "
&"ResultFailCount with sum as ResultFailCount, "
&"ResultNotExecutedCount with sum as ResultNotExecutedCount, "
&"ResultNotImpactedCount with sum as ResultNotImpactedCount"
&")",
null, [Implementation="2.0", OmitValues = ODataOmitValues.Nulls, ODataVersion = 4]
)
in
Source
Nahraďte {pipelineName}
a {startdate}
zadejte skutečné hodnoty dotazu.
Souhrn testů pro pracovní postup vydání
Pomocí následujících dotazů zobrazíte souhrn testů kanálu pro pracovní postup vydání .
Poznámka:
Informace o určení dostupných vlastností pro účely filtru nebo sestavy najdete v referenčních informacích k metadatům pro analýzu testovacích plánů. Dotazy můžete filtrovat nebo vracet vlastnosti pomocí libovolné hodnoty Property
pod hodnotami nebo NavigationPropertyBinding Path
hodnotami dostupnými v objektu EntitySet
EntityType
. Každý EntitySet
odpovídá hodnotě EntityType
. Další informace o datovém typu každé hodnoty najdete v metadatech zadaných pro odpovídající EntityType
hodnotu .
Zkopírujte a vložte následující dotaz Power BI přímo do okna Získat>prázdné dotazy . Další informace najdete v tématu Přehled ukázkových sestav pomocí dotazů OData.
let
Source = OData.Feed (
"https://analytics.dev.azure.com/mseng/AzureDevOps/_odata/v4.0-preview/TestResultsDaily?"
&"$apply=filter("
&"Pipeline/PipelineName eq '{pipelineName}' "
&"And DateSK ge {startdate} "
&"And Workflow eq 'Release'"
&")/aggregate("
&"ResultCount with sum as ResultCount, "
&"ResultPassCount with sum as ResultPassCount, "
&"ResultFailCount with sum as ResultFailCount, "
&"ResultNotExecutedCount with sum as ResultNotExecutedCount, "
&"ResultNotImpactedCount with sum as ResultNotImpactedCount"
&")",
null, [Implementation="2.0", OmitValues = ODataOmitValues.Nulls, ODataVersion = 4]
)
in
Source
Souhrn testů filtrovaný podle větve
Pokud chcete zobrazit souhrn testů kanálu pro určitou větev, použijte následující dotazy. Pokud chcete vytvořit sestavu, proveďte následující kroky navíc spolu s tím, co je uvedeno dále v tomto článku.
- Rozbalit
Branch
doBranch.BranchName
- Vyberte průřez vizualizace Power BI a přidejte pole
Branch.BranchName
do pole průřezu . - Vyberte název větve z průřezu, pro který potřebujete zobrazit souhrn výsledků.
Další informace o používání průřezů najdete v tématu Průřezy v Power BI.
Zkopírujte a vložte následující dotaz Power BI přímo do okna Získat>prázdné dotazy . Další informace najdete v tématu Přehled ukázkových sestav pomocí dotazů OData.
let
Source = OData.Feed (
"https://analytics.dev.azure.com/mseng/AzureDevOps/_odata/v4.0-preview/TestResultsDaily?"
&"$apply=filter("
&"Pipeline/PipelineName eq '{pipelineName}' "
&"And DateSK ge {startdate} "
&"And Workflow eq 'Build'"
&")/groupby("
&"(Branch/BranchName),"
&"aggregate("
&"ResultCount with sum as ResultCount, "
&"ResultPassCount with sum as ResultPassCount, "
&"ResultFailCount with sum as ResultFailCount, "
&"ResultNotExecutedCount with sum as ResultNotExecutedCount, "
&"ResultNotImpactedCount with sum as ResultNotImpactedCount"
&")",
null, [Implementation="2.0", OmitValues = ODataOmitValues.Nulls, ODataVersion = 4]
)
in
Source
Souhrn testů filtrovaný podle testovacího souboru
Pokud chcete zobrazit souhrn testů kanálu pro konkrétní testovací soubor, použijte následující dotazy. Pokud chcete vytvořit sestavu, proveďte následující dodatečné kroky spolu s tím, co je definováno dále v tomto článku.
- Rozbalit
Test
doTest.ContainerName
- Vyberte průřez vizualizace Power BI a přidejte pole
Test.ContainerName
do pole průřezu . - V průřezu vyberte název kontejneru, pro který potřebujete zobrazit souhrn výsledků.
Zkopírujte a vložte následující dotaz Power BI přímo do okna Získat>prázdné dotazy . Další informace najdete v tématu Přehled ukázkových sestav pomocí dotazů OData.
let
Source = OData.Feed (
"https://analytics.dev.azure.com/mseng/AzureDevOps/_odata/v4.0-preview/TestResultsDaily?"
&"$apply=filter("
&"Pipeline/PipelineName eq '{pipelineName}' "
&"And DateSK ge {startdate} "
&"And Workflow eq 'Build'"
&")/groupby("
&"(Test/ContainerName),"
&"aggregate("
&"ResultCount with sum as ResultCount, "
&"ResultPassCount with sum as ResultPassCount, "
&"ResultFailCount with sum as ResultFailCount, "
&"ResultNotExecutedCount with sum as ResultNotExecutedCount, "
&"ResultNotImpactedCount with sum as ResultNotImpactedCount"
&")",
null, [Implementation="2.0", OmitValues = ODataOmitValues.Nulls, ODataVersion = 4]
)
in
Source
Souhrn testů filtrovaný vlastníkem testu
Pokud chcete zobrazit souhrn testů kanálu pro testy vlastněné konkrétním vlastníkem testu, použijte následující dotazy. Pokud chcete vytvořit sestavu, proveďte následující dodatečné kroky spolu s tím, co je definováno dále v tomto článku.
- Rozbalit
Test
doTest.TestOwner
- Vyberte průřez vizualizace Power BI a přidejte pole
Test.TestOwner
do pole průřezu . - Vyberte vlastníka testu z průřezu, pro který potřebujete zobrazit souhrn výsledků.
Zkopírujte a vložte následující dotaz Power BI přímo do okna Získat>prázdné dotazy . Další informace najdete v tématu Přehled ukázkových sestav pomocí dotazů OData.
let
Source = OData.Feed (
"https://analytics.dev.azure.com/mseng/AzureDevOps/_odata/v4.0-preview/TestResultsDaily?"
&"$apply=filter("
&"Pipeline/PipelineName eq '{pipelineName}' "
&"And DateSK ge {startdate} "
&"And Workflow eq 'Build'"
&")/groupby("
&"(Test/TestOwner),"
&"aggregate("
&"ResultCount with sum as ResultCount, "
&"ResultPassCount with sum as ResultPassCount, "
&"ResultFailCount with sum as ResultFailCount, "
&"ResultNotExecutedCount with sum as ResultNotExecutedCount, "
&"ResultNotImpactedCount with sum as ResultNotImpactedCount"
&")",
null, [Implementation="2.0", OmitValues = ODataOmitValues.Nulls, ODataVersion = 4]
)
in
Source
Náhradní řetězce a rozpis dotazů
Nahraďte následující řetězce hodnotami. Nezahrnujte do náhradních závorek {} . Pokud je například název vaší organizace "Fabrikam", nahraďte {organization}
ho Fabrikam
, nikoli {Fabrikam}
.
{organization}
- Název vaší organizace.{project}
- Název projektu vašeho týmu.{pipelinename}
– Název vašeho kanálu. Příklad:Fabrikam hourly build pipeline
.{startdate}
- Datum zahájení sestavy. Kalendářní data můžete zadat ve formátu RRRRMMDD. Například20220815
pro 15. srpna 2022.
Rozpis dotazů
Následující tabulka popisuje jednotlivé části dotazu.
Část dotazování
Popis
$apply=filter(
Klauzule Start filter()
.
Pipeline/PipelineName eq '{pipelineName}'
Návratová testovací spuštění pro zadaný kanál.
and CompletedOn/Date ge {startdate}
Návratová testovací spuštění k zadanému datu nebo po tomto datu.
and Workflow eq 'Build'
nebo and Workflow eq 'Release'
Návratová testovací spuštění pouze pro kanály určené pracovním postupem Build
nebo Release
pracovním postupem.
)
Klauzule Close filter()
aggregate(
Spusťte klauzuli aggregate
pro všechna testovací spuštění odpovídající kritériím filtru.
ResultCount with sum as ResultCount,
Spočítejte celkový počet testovacích běhů jako ResultCount
.
ResultPassCount with sum as ResultPassCount,
Spočítejte celkový počet úspěšných testovacích běhů jako ResultPassCount
.
ResultFailCount with sum as ResultFailCount
Spočítejte celkový počet neúspěšných testovacích spuštění jako ResultFailCount
.
ResultNotExecutedCount with sum as ResultNotExecutedCount,
Spočítejte celkový počet nespouštět testovacích běhů jako ResultNotExecutedCount
.
ResultNotImpactedCount with sum as ResultNotImpactedCount
Spočítejte celkový počet ovlivněných testovacích běhů jako ResultNotImpactedCount
.
)
Zavřete klauzuli aggregate()
.
(Volitelné) Přejmenování dotazu
Výchozí popisek dotazu , Query1, můžete přejmenovat na něco smysluplnějšího. Jednoduše zadejte nový název z podokna Nastavení dotazu.
(Volitelné) Přejmenování polí sloupců
Pole sloupců můžete přejmenovat. Můžete například přejmenovat sloupec Pipeline.PipelineName
na Pipeline Name
, nebo TotalCount
na Total Count
. Postup najdete v tématu Přejmenování polí sloupců.
Zavřete dotaz a použijte změny.
Jakmile dokončíte všechny transformace dat, v nabídce Domů zvolte Zavřít a použít dotaz a vraťte se na kartu Sestava v Power BI.
Vytvoření sestavy prstencového grafu
V Power BI v části Vizualizace zvolte prstencovou sestavu.
Do hodnot přidejte následující pole v uvedeném pořadí. Klikněte pravým tlačítkem na každé pole a ujistěte se, že je vybraný součet .
ResultPassCount
ResultFailCount
ResultNotExecutedCount
ResultNotImpactedCount
Sestava by měla vypadat podobně jako na následujícím obrázku.