Megosztás a következőn keresztül:


Pelyhes tesztek mintajelentése

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

Az alábbi képen látható módon létrehozhat egy jelentést, amely felsorolja a tesztfeladatokat tartalmazó folyamatfuttatásokban előforduló pelyhes teszteket. A pikkelyes teszt olyan teszt, amely különböző eredményeket biztosít, például átengedi vagy meghiúsul, még akkor is, ha a forráskódban vagy a végrehajtási környezetben nincs változás. A pelyhes tesztek engedélyezéséről további információt a pelyhes tesztek kezelése című témakörben talál. A tesztek folyamathoz való hozzáadásáról a cikk későbbi részében, a Feladaterőforrások tesztelése című szakaszban talál további információt.

Képernyőkép a Flaky Tests Table jelentésről.

A cikkben megadott lekérdezésekkel hozza létre a következő jelentéseket:

  • Pelyhes tesztek a buildelési munkafolyamathoz
  • Pelyhes tesztek a kiadási munkafolyamathoz
  • Egy adott ág pelyhes tesztjei
  • Pelyhes tesztek egy adott tesztfájlhoz
  • Egy adott teszttulajdonos pelyhes tesztjei.

Fontos

Az Elemzési szolgáltatás OData-hírcsatornájának Power BI-integrációja és hozzáférése általánosan elérhető az Azure DevOps Serviceshez, valamint az Azure DevOps Server 2020- és újabb verzióihoz. A cikkben szereplő minta lekérdezések csak az Azure DevOps Server 2020 és újabb verzióira érvényesek, és a 3.0-s vagy újabb verziótól függnek. Javasoljuk, hogy használja ezeket a lekérdezéseket, és küldjön nekünk visszajelzést.

Előfeltételek

Feljegyzés

Ez a cikk feltételezi, hogy OData-lekérdezések használatával olvassa el a mintajelentések áttekintését, és alapszintű ismeretekkel rendelkezik a Power BI-ról.

Minta lekérdezések

Az entitáskészlet alábbi lekérdezéseivel TestResultsDaily különböző, de hasonló folyamatfoltos tesztjelentéseket hozhat létre. Az TestResultsDaily entitáskészlet napi pillanatkép-aggregátumot biztosít a TestResult végrehajtásokról, teszt szerint csoportosítva.

Feljegyzés

A szűrési vagy jelentéskészítési célokra elérhető tulajdonságok meghatározásához tekintse meg a Test Plans Analytics metaadat-referenciáit és az Azure Pipelines metaadat-referenciáit. Szűrheti a lekérdezéseket, vagy visszaadhatja a tulajdonságokat egy Property adott vagy egy adott értékkel elérhető értékek EntityType NavigationPropertyBinding Path bármelyikével EntitySet. Mindegyik EntitySet egy EntityType. Az egyes értékek adattípusával kapcsolatos további információkért tekintse át a megfelelő EntityTypemetaadatokat.

Pelyhes tesztek buildelési munkafolyamathoz

Az alábbi lekérdezésekkel megtekintheti a buildelési munkafolyamatok pelyhes tesztjeit.

Másolja és illessze be közvetlenül az alábbi Power BI-lekérdezést az Üres adat>lekérdezés lekérése ablakba. További információ: OData-lekérdezéseket használó mintajelentések áttekintése.

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 Workflow eq 'Build') "
        &"/groupby((TestSK, Test/TestName), "
            &"aggregate( "
                &"ResultCount with sum as TotalCount, "
                &"ResultPassCount with sum as PassedCount, "
                &"ResultFailCount with sum as FailedCount, "
                &"ResultNotExecutedCount with sum as NotExecutedCount, "
                &"ResultNotImpactedCount with sum as NotImpactedCount, "
                &"ResultFlakyCount with sum as FlakyCount)) "
    &"/filter(FlakyCount gt 0) "
    &"/compute( "
    &"(FlakyCount div cast(TotalCount, Edm.Decimal)) mul 100 as FlaykRate) "
    ,null, [Implementation="2.0",OmitValues = ODataOmitValues.Nulls,ODataVersion = 4]) 
in
    Source

Pelyhes tesztek a kiadási munkafolyamathoz

A következő lekérdezésekkel megtekintheti a kiadási munkafolyamatok pelyhes tesztjeit.

Másolja és illessze be közvetlenül az alábbi Power BI-lekérdezést az Üres adat>lekérdezés lekérése ablakba. További információ: OData-lekérdezéseket használó mintajelentések áttekintése.

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}) "
        &"/groupby((TestSK, Test/TestName, Workflow), "
        &"aggregate( "
                &"ResultCount with sum as TotalCount, "
                &"ResultPassCount with sum as PassedCount, "
                &"ResultFailCount with sum as FailedCount, "
                &"ResultNotExecutedCount with sum as NotExecutedCount, "
                &"ResultNotImpactedCount with sum as NotImpactedCount, "
                &"ResultFlakyCount with sum as FlakyCount)) "
        &"/filter(FlakyCount gt 0) "
    &"/compute( "
    &"(FlakyCount div cast(TotalCount, Edm.Decimal)) mul 100 as FlakyRate) "
    ,null, [Implementation="2.0",OmitValues = ODataOmitValues.Nulls,ODataVersion = 4]) 
in
    Source

Elágaztatás szerint szűrt pelyhes tesztek

Egy adott ághoz tartozó folyamat sikertelen tesztjeinek megtekintéséhez használja az alábbi lekérdezéseket. A jelentés létrehozásához hajtsa végre a következő további lépéseket a cikk későbbi részében megadottakkal együtt.

  • Bontsa ki Branch a Branch.BranchName
  • Válassza a Power BI-vizualizáció szeletelőjét, és adja hozzá a mezőt Branch.BranchName a szeletelő mezőihez
  • Válassza ki azt az ágnevet a szeletelőből, amelynek az eredmény összegzését meg kell jelenítenie.

További információ a szeletelők használatáról: Szeletelők a Power BI-ban.

Másolja és illessze be közvetlenül az alábbi Power BI-lekérdezést az Üres adat>lekérdezés lekérése ablakba. További információ: OData-lekérdezéseket használó mintajelentések áttekintése.

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 Workflow eq 'Build') "
        &"/groupby((TestSK, Test/TestName, Branch/BranchName), "
            &"aggregate( "
                &"ResultCount with sum as TotalCount, "
                &"ResultPassCount with sum as PassedCount, "
                &"ResultFailCount with sum as FailedCount, "
                &"ResultNotExecutedCount with sum as NotExecutedCount, "
                &"ResultNotImpactedCount with sum as NotImpactedCount, "
                &"ResultFlakyCount with sum as FlakyCount)) "
    &"/filter(FlakyCount gt 0) "
    &"/compute( "
    &"(FlakyCount div cast(TotalCount, Edm.Decimal)) mul 100 as FlakyRate) "
    ,null, [Implementation="2.0",OmitValues = ODataOmitValues.Nulls,ODataVersion = 4]) 
in
    Source

Tesztfájl alapján szűrt pelyhes tesztek

Egy folyamat és egy adott tesztfájl pelyhes tesztjeinek megtekintéséhez használja az alábbi lekérdezéseket. A jelentés létrehozásához hajtsa végre a következő további lépéseket a cikk későbbi részében meghatározottakkal együtt.

  • Bontsa ki Test a Test.ContainerName
  • Válassza a Power BI-vizualizáció szeletelőjét, és adja hozzá a mezőt Test.ContainerName a szeletelő mezőihez
  • Válassza ki annak a szeletelőnek a tárolónevét, amelynek az eredmény összegzését meg kell jelenítenie.

Másolja és illessze be közvetlenül az alábbi Power BI-lekérdezést az Üres adat>lekérdezés lekérése ablakba. További információ: OData-lekérdezéseket használó mintajelentések áttekintése.

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}) "
        &"/groupby((TestSK, Test/TestName, Test/ContainerName), "
        &"aggregate( "
                &"ResultCount with sum as TotalCount, "
                &"ResultPassCount with sum as PassedCount, "
                &"ResultFailCount with sum as FailedCount, "
                &"ResultNotExecutedCount with sum as NotExecutedCount, "
                &"ResultNotImpactedCount with sum as NotImpactedCount, "
                &"ResultFlakyCount with sum as FlakyCount)) "
        &"/filter(FlakyCount gt 0) "
    &"/compute( "
    &"(FlakyCount div cast(TotalCount, Edm.Decimal)) mul 100 as FlakyRate) "
    ,null, [Implementation="2.0",OmitValues = ODataOmitValues.Nulls,ODataVersion = 4]) 
in
    Source

Teszttulajdonos által szűrt pelyhes tesztek

Egy adott teszttulajdonos tulajdonában lévő folyamatok és tesztek Flaky-tesztjeinek megtekintéséhez használja az alábbi lekérdezéseket. A jelentés létrehozásához hajtsa végre a következő további lépéseket a cikk későbbi részében meghatározottakkal együtt.

  • Bontsa ki Test a Test.TestOwner
  • Válassza a Power BI-vizualizáció szeletelőjét, és adja hozzá a mezőt Test.TestOwner a szeletelő mezőihez
  • Válassza ki a teszt tulajdonosát abból a szeletelőből, amelyhez meg kell tekintenie az eredmények összegzését.

Másolja és illessze be közvetlenül az alábbi Power BI-lekérdezést az Üres adat>lekérdezés lekérése ablakba. További információ: OData-lekérdezéseket használó mintajelentések áttekintése.

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}) "
        &"/groupby((TestSK, Test/TestName, Test/TestOwner), "
        &"aggregate( "
                &"ResultCount with sum as TotalCount, "
                &"ResultPassCount with sum as PassedCount, "
                &"ResultFailCount with sum as FailedCount, "
                &"ResultNotExecutedCount with sum as NotExecutedCount, "
                &"ResultNotImpactedCount with sum as NotImpactedCount, "
                &"ResultFlakyCount with sum as FlakyCount)) "
        &"/filter(FlakyCount gt 0) "
    &"/compute( "
    &"(FlakyCount div cast(TotalCount, Edm.Decimal)) mul 100 as FlakyRate) "
    ,null, [Implementation="2.0",OmitValues = ODataOmitValues.Nulls,ODataVersion = 4]) 
in
    Source

Helyettesítési sztringek és lekérdezések lebontása

Cserélje le a következő sztringeket az értékekkel. Ne tartalmazzon szögletes zárójeleket {} a helyettesítéssel. Ha például a szervezet neve "Fabrikam", cserélje le a Fabrikamhelyére {organization} a nem {Fabrikam}.

 

  • {organization} - A szervezet neve
  • {project} – A csapat projektneve
  • {pipelinename} - A folyamat neve. Példa: Fabrikam hourly build pipeline
  • {startdate} - A jelentés indításának dátuma. Formátum: YYYYY-MM-DDZ. Példa: 2021-09-01Z 2021. szeptember 1. Ne foglaljon össze idézőjeleket vagy szögletes zárójeleket, és használjon két számjegyet mind a hónap, mind a dátum esetében.

Lekérdezések lebontása

Az alábbi táblázat a lekérdezés egyes részeit ismerteti.

Lekérdezési rész

Leírás

$apply=filter(

Start filter() záradék.

Pipeline/PipelineName eq '{pipelineName}'

A megadott folyamat tesztfuttatásainak visszaadása.

and CompletedOn/Date ge {startdate}

A visszaadott teszt a megadott dátumon vagy után fut.

and Workflow eq 'Build'

Munkafolyamat tesztfuttatásainak visszaadása Build .

)

Zárja be filter() a záradékot.

/groupby(

Start groupby() záradék.

(TestSK, Test/TestName),

Csoportosítás a teszt neve alapján.

aggregate(

Start aggregate záradék a szűrőfeltételnek megfelelő tesztfuttatások kiszámításához.

ResultCount with sum as TotalCount,

A tesztfuttatások teljes számának megszámlálása a következőképpen TotalCount: .

ResultPassCount with sum as PassedCount,

Az átadott tesztfuttatások teljes számának megszámlálása a következőként PassedCount: .

ResultFailCount with sum as FailedCount,

A sikertelen tesztfuttatások teljes számának megszámlálása a következőként FailedCount: .

ResultNotExecutedCount with sum as NotExecutedCount

A nem végrehajtott tesztfuttatások teljes számának megszámlálása a következőként NotExecutedCount: .

ResultNotImpactedCount with sum as NotImpactedCount,

A nem érintett tesztfuttatások teljes számának megszámlálása a következőképpen NotImpactedCount: .

ResultFlakyCount with sum as FlakyCount

A pelyhes tesztfuttatások teljes számának megszámlálása a következőképpen FlakyCount: .

))

Bezárás aggregate() és groupby() záradékok.

/filter(FlakyCount gt 0)

Csak azokat a teszteket szűrje ki, amelyek legalább egyszer pelyhesek voltak.

/compute(

Start compute() záradék.

(FlakyCount div cast(TotalCount, Edm.Decimal)) mul 100 as FlakyRate

Az összes pelyhes teszthez számítsa ki a FlakyRate.

)

Zárja be compute() a záradékot.

(Nem kötelező) Lekérdezés átnevezése

Az alapértelmezett lekérdezéscímkét (Query1) átnevezheti valami értelmesebbre. Egyszerűen adjon meg egy új nevet a Lekérdezés beállításai panelen.

Képernyőkép a Power BI lekérdezési menüjének beállításairól, a lekérdezés átnevezéséről.

A Tesztelés oszlop kibontása a Power BI-ban

Bontsa ki az Test oszlopot a kibontott entitás Test.TestNamemegjelenítéséhez. Ha kibontja az oszlopot, a rekordot adott mezőkké alakítja. Ha szeretné megtudni, hogyan hozhat létre Power BI-jelentéseket, bontsa ki az oszlopokat, olvassa el a Transform Analytics-adatokat.

Oszlop adattípusának módosítása

  1. A Power Query-szerkesztő válassza ki a TotalCount, , PassedCountFailedCount, NotExecutedCount, , NotImpactedCountés FlakyCount oszlopokat; válassza az Adattípus lehetőséget az Átalakítás menüből, majd válassza a Teljes szám lehetőséget.

  2. Jelölje ki az FlakyRate oszlopot; válassza az Adattípus lehetőséget az Átalakítás menüben, majd válassza a Tizedes tört elemet.

Az adattípus módosításáról további információt a Power BI-jelentések létrehozásához használt Transform Analytics-adatok, oszlop adattípus átalakítása című témakörben talál.

Zárja be a lekérdezést, és alkalmazza a módosításokat

Miután elvégezte az összes adatátalakítást, válassza a Kezdőlap menü Bezárás &alkalmaz elemét a lekérdezés mentéséhez és a Power BI Jelentés lapjára való visszatéréshez.

Képernyőkép a Power Query-szerkesztő Bezárás és alkalmazás lehetőségről.

A Tábla jelentés létrehozása

  1. A Power BI Vizualizációk területén válassza a Táblázat lehetőséget, és húzza a mezőket az Oszlopok területre.

    Képernyőkép a Flaky-tesztek táblajelentés vizualizációs mezőinek kiválasztásáról.

  2. Adja hozzá a következő mezőket az Oszlopok szakaszhoz a felsorolt sorrendben.

    • Test.TestName
    • TotalCount
    • PassedCount
    • FailedCount
    • FlakyCount
    • FlakyRate

A jelentésnek az alábbi képhez hasonlóan kell kinéznie.

Képernyőkép a Minta Pelyhes tesztek tábla jelentéséről.

Tevékenységerőforrások tesztelése