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


Tesztidő mintajelentése

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

Az alábbi képen láthatóhoz hasonló tesztelési időtartamjelentések bemutatják, hogy egy teszt hányszor fut, és hogy egy adott teszt átlagosan mennyi időt vesz igénybe egy folyamat futtatása során.

Képernyőkép a Test Duration Table jelentésről.

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

  • A build munkafolyamat tesztidőtartama
  • A kiadási munkafolyamat tesztelési időtartama
  • Egy adott ág tesztelési időtartama
  • Adott tesztfájl tesztelési időtartama
  • Adott teszttulajdonos tesztelési időtartama

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.

Kategória Követelmények
hozzáférési szintek - projekt tagja.
- Legalább alapszintű hozzáférést.
Jogosultságok Alapértelmezés szerint a projekttagok jogosultak az Analytics lekérdezésére és nézetek létrehozására. A szolgáltatás- és szolgáltatás-engedélyezéssel, valamint az általános adatkövetési tevékenységekkel kapcsolatos egyéb előfeltételekről további információt az Analytics eléréséhez szükséges engedélyek és előfeltételek című témakörben talál.

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ó tesztelési időtartamú jelenté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 bármelyik Property érték alapján egy EntityType vagy NavigationPropertyBinding Path értékkel, amelyek elérhetők egy EntitySet segítségével. Mindegyik EntitySet megfelel egy EntityType. Az egyes értékek adattípusával kapcsolatos további információkért tekintse át a megfelelő EntityTypemetaadatokat.

Build munkafolyamat teszt időtartama

A következő lekérdezésekkel megtekintheti egy buildelési munkafolyamattal rendelkező folyamat tesztidejének jelenté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} "
      &"And Workflow eq 'Build'"
      &")/groupby("
      &"(TestSK, Test/TestName),"
      &"aggregate("
      &"ResultCount with sum as TotalCount, "
      &"ResultDurationSeconds with sum as TotalDuration"
      &"))/compute("
      &"TotalDuration div TotalCount as AvgDuration"
      &")",
      null, [Implementation="2.0", OmitValues = ODataOmitValues.Nulls, ODataVersion = 4]
   )
in
    Source

A kiadási munkafolyamat tesztelési időtartama

A következő lekérdezésekkel megtekintheti egy folyamat tesztelési időtartamáról szóló jelentést egy Kiadási munkafolyamattal.

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, "
      &"ResultDurationSeconds with sum as TotalDuration"
      &"))/compute("
      &"TotalDuration div TotalCount as AvgDuration"
      &")",
      null, [Implementation="2.0", OmitValues = ODataOmitValues.Nulls, ODataVersion = 4]
   )
in
    Source

Az elágazás szerint szűrt teszt időtartama

Az adott ághoz tartozó folyamattesztek tesztelési időtartamának 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.

  • Alakítsa Branch-t Branch.BranchName-vé
  • 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 a fióknevet a szűrőből, amelynek az eredményösszegzését meg kell tekintenie.

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, "
      &"ResultDurationSeconds with sum as TotalDuration"
      &"))/compute("
      &"TotalDuration div TotalCount as AvgDuration"
      &")",
      null, [Implementation="2.0", OmitValues = ODataOmitValues.Nulls, ODataVersion = 4]
   )
in
    Source

Tesztelési időtartam tesztfájl alapján szűrve

Egy adott teszttulajdonos által birtokolt tesztek folyamatának tesztelési időtartamának 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.

  • Alakítsa Test-t Test.ContainerName-vé
  • 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 azt a tesztfájlt a szeletelőből, amelyhez látnia kell az eredmény ö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} "
      &"And Workflow eq 'Build'"
      &")/groupby("
      &"(TestSK, Test/TestName, Test/ContainerName),"
      &"aggregate("
      &"ResultCount with sum as TotalCount, "
      &"ResultDurationSeconds with sum as TotalDuration"
      &"))/compute("
      &"TotalDuration div TotalCount as AvgDuration"
      &")",
      null, [Implementation="2.0", OmitValues = ODataOmitValues.Nulls, ODataVersion = 4]
   )
in
    Source

Teszt időtartama a teszt tulajdonosa szerint szűrve

Egy adott teszttulajdonos által birtokolt tesztek folyamatának tesztelési időtartamának 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.

  • Alakítsa Test-t Test.TestOwner-vé
  • 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, amelynek az eredmény-összegzésére kíváncsi.

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, Test/TestOwner),"
      &"aggregate("
      &"ResultCount with sum as TotalCount, "
      &"ResultDurationSeconds with sum as TotalDuration"
      &"))/compute("
      &"TotalDuration div TotalCount as AvgDuration"
      &")",
      null, [Implementation="2.0", OmitValues = ODataOmitValues.Nulls, ODataVersion = 4]
   )
in
    Source

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

Cserélje le a következő karakterláncokat a saját értékeire. Ne tartalmazzon szögletes zárójeleket {} csere során. Ha például a szervezet neve "Fabrikam", cserélje le a {organization}-t Fabrikam-re, és ne {Fabrikam}-re.

  • {organization} - A szervezet neve.
  • {project} - A csapat projektneve.
  • {pipelinename} - A folyamatvonal 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(

Indítsa el filter() záradék.

Pipeline/PipelineName eq '{pipelineName}'

A névvel ellátott folyamat tesztfuttatásainak visszaadása.

And Date/Date ge {startdate}

A tesztfuttatások visszaadása a megadott dátumon vagy azután történhet.

and Workflow eq 'Build'

Tesztfuttatások visszaküldése a Build munkafolyamathoz.

)

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

/groupby(

Indítsa el 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ő különböző tesztfuttatási eredmények összegzéséhez.

ResultCount with sum as TotalCount,

Számolja meg a tesztfuttatások teljes számát TotalCount.

ResultDurationSeconds with sum as TotalDuration

Összegezd az összes futtatás teljes időtartamát TotalDuration-ként.

))

Zárja be a aggregate() és groupby() záradékokat.

/compute(

Indítsa el compute() záradék.

TotalDuration div TotalCount as AvgDuration

Az összes teszt esetében számítsa ki az átlagos időtartamot úgy, hogy elosztja a teljes időtartamot a futtatások teljes számával.

)

Zárja be a compute() 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. Az oszlop kibővítése a rekordot adott mezőkké sí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 az TotalCount oszlopot; 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 a TotalDuration és AvgDuration oszlopokat; válassza az Adattípus lehetőséget az Átalakítás menüből; majd válassza a Decimális szám.

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 vizualizációs mezők kiválasztásáról a Test Duration táblajelentéshez.

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

    • Test.TestName
    • TotalCount
    • AvgDuration
  3. Kattintson a jobb gombbal az AvgDuration-ra, majd válassza a átlagot az összeg helyett.

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

Képernyőkép a Mintateszt időtartama tábla jelentésről.