Megjegyzés
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhat bejelentkezni vagy módosítani a címtárat.
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhatja módosítani a címtárat.
Minden jelentésbeállításhoz szükség van a szakaszában elnevezett bővítménycsomagra. Adja hozzá közvetlenül a csomagot, vagy használjon egy teszt SDK-konfigurációt vagy profilt, amely tartalmazza azt. A jelentésbővítmények nem képezik az MTP alapvető részét, ezért egy olyan beállítást, mint a --report-trx, a tesztalkalmazás nem ismer fel, ha nem regisztrálja annak bővítményét. Futtassa a tesztalkalmazást a(z) --help használatával, vagy futtassa a(z) dotnet test --help elemet MTP módban, hogy meggyőződjön arról, hogy elérhető-e egy opció.
Jótanács
A Microsoft.Testing.Platform.MSBuild (amelyet az MSTest, az NUnit és az xUnit tesztfutók tranzitívan tartalmaznak) használatakor ezek a bővítmények automatikusan regisztrálásra kerülnek a NuGet-csomagok telepítésekor – nincs szükség a kód módosítására. A cikkben megadott manuális regisztrációra csak akkor van szükség, ha a beállítással <GenerateTestingPlatformEntryPoint>false</GenerateTestingPlatformEntryPoint>letiltotta az automatikusan létrehozott belépési pontot.
Jelentésfájlnevek
Minden jelentéskiterjesztés a fájlját a teszteredmények könyvtárába írja, amelyet a(z) --results-directory kapcsolóval adhat meg. A név felülírásához használja a hozzá tartozó --report-*-filename beállítást. Minden jelentésszakasz felsorolja a jelentés alapértelmezett nevét.
A fájlnevek tartalmazhatnak relatív elérési utat, amely a teszteredmények könyvtárában marad, és a következő helyettesítő elemeket (helyőrzőket) használhatja:
| Placeholder | Description |
|---|---|
{asm} |
A bejegyzés-összeállítás neve, vagy unknown, ha nem áll rendelkezésre. |
{tfm} |
A futásidőben észlelt célkeretrendszer megnevezése, például net9.0. |
{arch} |
Folyamatarchitektúra, például x64, x86vagy arm64. |
{pname} |
Folyamat neve. |
{pid} |
Folyamatazonosító. |
{time} |
Nagy pontosságú időbélyeg. |
Például --report-trx-filename "{asm}_{tfm}_{arch}.trx" reprodukálja az alapértelmezett TRX-nevet.
Megjegyzés:
A helyőrzőnevek megkülönböztetik a kis- és nagybetűket, és kisbetűsek. A jelentésfájlnevek helyőrző támogatása az MTP-ben érhető el a 2.3.0-s verziótól kezdve.
Jelentéskonszolidáció
Az MTP 2.4.0-tól kezdve az MTP automatikusan feldolgozza a jelentésösszetevőket, miután egy dotnet test meghívás több tesztmodult futtat, vagy miután újrapróbálkozás után a támogatás több kísérletet is futtat. A funkció kísérleti jellegű az MTP 2.4.0-s verzióban.
A TRX, JUnit, CTRF és HTML-bővítmények jelentéstípus szerint csoportosítják a kompatibilis összetevőket, és konszolidált jelentést írnak a teszteredmény-könyvtár alkönyvtárában merged . A CTRF-összevonás egyesíti a modulok eredményeit, és az újrapróbálkozásokat az újrapróbálkozási előzményekkel együtt a végső teszteredménybe vonja össze. A HTML-összevonás egyesített összegzést hoz létre, és megőrzi az eredeti folyamatonkénti jelentéseket.
Az egyéni jelentésbővítmények esetében a kísérleti IArtifactPostProcessor API külön TestModules és RetryAttempts feldolgozási módokat tesz elérhetővé. További információ: A IArtifactPostProcessor bővítmények.
Visual Studio tesztjelentések (TRX)
A teszteredmények közzétételének alapértelmezett formátuma a Visual Studio teszteredményfájl (vagy TRX). Ehhez a bővítményhez a Microsoft.Testing.Extensions.TrxReport NuGet csomag szükséges.
Manuális regisztráció
var builder = await TestApplication.CreateBuilderAsync(args);
builder.AddTrxReportProvider();
Megjegyzés:
Manuális regisztráció használatakor regisztrálja utoljára a TRX jelentésszolgáltatót. Az aktuális implementáció a regisztrációs sorrendtől függ, ezért az összes többi bővítmény után történő regisztrálás biztosítja az összes tesztadat rögzítését.
Megjegyzés:
Az 1.9.0-s verziótól kezdve elérhető MTP-ben a TRX-jelentés tartalmazza a tesztmezőt Description .
Megjegyzés:
Az MTP-ben a 2.3.0-s verziótól kezdve a TRX-eredmények a futtatás előrehaladtával folyamatosan a lemezre íródnak. Ha a tesztgazda összeomlik, a TRX-fájl megőrzi az összeomlás előtt összegyűjtött eredményeket.
Beállítások
| Lehetőség | Description |
|---|---|
--report-trx |
Létrehozza a TRX-jelentést. |
--report-trx-filename |
A létrehozott TRX-jelentés neve. Az MTP 2.3.0-tól kezdődően az alapértelmezett érték a determinisztikus {asm}_{tfm}_{arch}.trx forma; az MTP 2.3.0 előtt az alapértelmezett érték volt <UserName>_<MachineName>_<yyyy-MM-dd_HH_mm_ss.fffffff>.trx. A név testreszabásához tekintse meg a jelentésfájlneveket. |
A jelentés az alapértelmezett TestResults mappába kerül, amely a --results-directory parancssori argumentumon keresztül adható meg.
HTML-jelentések
A HTML-jelentés egy interaktív, önálló HTML-fájlt hoz létre egy tesztmunkamenethez. Ehhez a bővítményhez a Microsoft.Testing.Extensions.HtmlReport NuGet-csomag szükséges.
Megjegyzés:
Az MTP-ben a 2.3.0-s verziótól kezdve érhető el. Ez a bővítmény kísérleti jellegű, és a beállításai és a kimeneti formátuma megváltozhat egy későbbi verzióban.
Manuális regisztráció
var builder = await TestApplication.CreateBuilderAsync(args);
builder.AddHtmlReportProvider();
Beállítások
| Lehetőség | Description |
|---|---|
--report-html |
Létrehozza a HTML-jelentést. |
--report-html-filename |
A létrehozott HTML-jelentés neve. Az értéknek a következővel kell végződnie .html: . Az alapértelmezett érték a {asm}_{tfm}_{arch}.html. A név testreszabásához tekintse meg a jelentésfájlneveket. Szükséges --report-html. |
JUnit-jelentések
A JUnit-jelentés létrehoz egy JUnit-kompatibilis XML-fájlt egy tesztmunkamenethez. Ehhez a bővítményhez a Microsoft.Testing.Extensions.JUnitReport NuGet-csomag szükséges.
Megjegyzés:
Az MTP-ben a 2.3.0-s verziótól kezdve érhető el. Ez a bővítmény kísérleti jellegű, és a beállításai és a kimeneti formátuma megváltozhat egy későbbi verzióban.
Az MSTest.Sdk 4.3-as verziójától kezdve a(z) <EnableMicrosoftTestingExtensionsJUnitReport>true</EnableMicrosoftTestingExtensionsJUnitReport> használatával lehet engedélyezni ezt a bővítményt. A bővítmény nem része az DefaultAllMicrosoft MSTest.Sdk-profilnak.
Manuális regisztráció
var builder = await TestApplication.CreateBuilderAsync(args);
builder.AddJUnitReportProvider();
Beállítások
| Lehetőség | Description |
|---|---|
--report-junit |
Létrehozza a JUnit XML-jelentést. |
--report-junit-filename |
A létrehozott JUnit XML-jelentés neve. Az értéknek a következővel kell végződnie .xml: . Az alapértelmezett érték a {asm}_{tfm}_{arch}.xml. A név testreszabásához tekintse meg a jelentésfájlneveket. Szükséges --report-junit. |
CTRF-jelentések
A CTRF-jelentés létrehoz egy JSON-fájlt, amely a Common Test Report Formátumot használja egy tesztmunkamenethez. Ehhez a bővítményhez a Microsoft.Testing.Extensions.CtrfReport NuGet-csomag szükséges.
Megjegyzés:
Az MTP-ben a 2.3.0-s verziótól kezdve érhető el. Ez a bővítmény kísérleti jellegű, és a beállításai és a kimeneti formátuma megváltozhat egy későbbi verzióban.
Manuális regisztráció
var builder = await TestApplication.CreateBuilderAsync(args);
builder.AddCtrfReportProvider();
Beállítások
| Lehetőség | Description |
|---|---|
--report-ctrf |
Létrehozza a CTRF JSON-jelentést. |
--report-ctrf-filename |
A létrehozott CTRF JSON-jelentés neve. Az értéknek a következővel kell végződnie .json: . Az alapértelmezett érték a <UserName>_<MachineName>_<assembly>_<tfm>_<timestamp>.ctrf.json. A név testreszabásához tekintse meg a jelentésfájlneveket. Szükséges --report-ctrf. |
Az MSTest 4.4-től kezdve az újrapróbált tesztek CTRF-eredményei tartalmazzák a retries és retryAttempts mezőket. Ha egy teszt egy korábbi sikertelen kísérlet után sikeres, az eredménye a(z) flaky: true elemet is tartalmazza. A terminál összegzése azonosítja a pelyhes és újrapróbálkozott teszteket. A TRX- és JUnit-jelentések tesztenként egy végső eredményt tárolnak ahelyett, hogy minden kísérletet rögzítenének.
Azure DevOps jelentések
Az Azure DevOps jelentési beépülő modul javítja a teszt futtatását azoknak a fejlesztőknek, akik a kódjukat a GitHub-on üzemeltetik, de Azure DevOps buildügynökökön futtatják. További információkat ad hozzá a hibákhoz, amelyek közvetlenül GitHub PR-ben jelenítik meg a hibát.
Ehhez a bővítményhez a Microsoft.Testing.Extensions.AzureDevOpsReport NuGet csomag szükséges.
Manuális regisztráció
var builder = await TestApplication.CreateBuilderAsync(args);
builder.TestHost.AddAzureDevOpsProvider();
Beállítások
| Lehetőség | MTP-verzió | Description |
|---|---|---|
--report-azdo |
1.9.0 | Engedélyezi a Azure DevOps jelentésgenerátort. A hibák és figyelmeztetések a kimenetbe Azure DevOps érthető formátumban vannak megírva. |
--report-azdo-severity |
1.9.0 | A jelentett eseményekhez használt súlyossági szint. Az érvényes értékek az (alapértelmezett) és a errorwarning. |
--report-azdo-groups |
2.4.0 | Engedélyezi vagy letiltja a szerelvényenkénti naplócsoportokat. Ha engedélyezve van, az egyes tesztszerelvények kimenete a Azure Pipelines napló összecsukható szakaszában jelenik meg. Az érvényes értékek a következők: on és off. Az MTP 2.4.0 előzetes buildjei alapértelmezés szerint a on értéket használják; a stabil MTP 2.4.0 kiadás alapértelmezés szerint a off értéket használja. Szükséges --report-azdo. |
--report-azdo-annotations |
2.4.0 | Engedélyezi vagy letiltja a sikertelen és kihagyott tesztekhez tartozó széljegyzeteket. Az érvényes értékek az (alapértelmezett) és a onoff. Szükséges --report-azdo. |
--report-azdo-flaky-history |
2.3.0 | Lekérdezi az Azure DevOpsban az elmúlt N nap (1–90) teszteredmény-előzményeit, és a jelentett hibákat instabilitási kontextussal látja el. Szükséges --report-azdo. |
--report-azdo-demote-known-flaky |
2.3.0 | Az Azure DevOps előzményablakában kellően instabil hibákat (az alapértelmezett küszöbérték 25%) hibáról figyelmeztetésre minősíti vissza. A következő elemek szükségesek: --report-azdo és --report-azdo-flaky-history. |
--report-azdo-quarantine-file |
2.3.0 | Azon tesztek teljesen minősített neveit vagy glob mintáit felsoroló szövegfájl elérési útja, amelyek karanténba vannak helyezve. Az egyeztetési hibák figyelmeztetésként jelennek meg. Szükséges --report-azdo. |
--report-azdo-summary |
2.3.0 | A tesztfuttatás végén Markdown formátumú feladat-összefoglalót ír, és a(z) ##vso[task.uploadsummary] használatával feltölti. A választható fájlelérési útvonal argumentum felülírja az alapértelmezett helyet ({testResultsDir}/azdo-summary-{tfm}.md). Szükséges --report-azdo. |
--report-azdo-stackframe-filter |
2.3.0 | Regexmintákat ad hozzá, amelyek az egyes veremkeretek teljesen minősített típusa előtagjára illeszkednek, és amelyeket a bővítmény figyelmen kívül hagy, amikor megkeresi a felhasználó annotálandó hívási helyét. Az opció többször is megadható, legfeljebb 16 mintáig, és minden minta 500 ms-os egyezési időkorláttal kerül lefordításra. Ezek a minták a bővítmény beépített MSTest assertion-implementációs előtagjaihoz adnak adalékot. Szükséges --report-azdo. |
--report-azdo-upload-artifacts |
2.3.0 | Feltölti a teszteredményfájlokat, és/vagy buildcímkéket ad hozzá a Azure DevOps. Az érvényes értékek a következők off : (alapértelmezett), tags-onlyfilesés all. |
--report-azdo-upload-artifact-include |
2.3.0 | A teszteredmények könyvtárához viszonyított glob minták alapján fájlokat foglal bele az Azure DevOps-műtermék feltöltésébe. Alapértelmezett érték: **/*. Megköveteli, hogy a(z) --report-azdo-upload-artifacts értéke ne off legyen. |
--report-azdo-upload-artifact-exclude |
2.3.0 | Kizárja a fájlokat az Azure DevOps-buildtermék feltöltéséből, a teszteredmények könyvtárához viszonyított globminták alapján. Megköveteli, hogy a(z) --report-azdo-upload-artifacts értéke ne off legyen. |
--report-azdo-upload-artifact-name |
2.3.0 | Felülbírálja a Azure DevOps összetevőtároló nevét. Alapértelmezett érték: TestResults_{assemblyName}_{tfm}. Megköveteli, hogy a(z) --report-azdo-upload-artifacts értéke ne off legyen. |
--publish-azdo-test-results |
2.3.0 | A teszteredményeket élőben teszi közzé a Azure DevOps Tesztek lapon. |
--publish-azdo-run-name |
2.3.0 | Egyéni Azure DevOps tesztfuttatás nevét állítja be az élő teszteredmények közzétételéhez. Szükséges --publish-azdo-test-results. |
Warning
Ne engedélyezze a csoportokat, ha több teszt-összeállítás fut párhuzamosan.
##[group] Azure DevOps és ##[endgroup] formázási parancsok egymást követő és névtelenek. Az egyidejű szerelvénykimenetek átjárhatják egymást, helytelen csoportbe ágyazást okozhatnak, és helytelen szerelvény alá helyezhetik a sorokat. Ha az MTP 2.4.0 előzetes buildjét használja, a csoportok letiltásához adja meg a(z) --report-azdo-groups off értéket. A stabil MTP 2.4.0-s kiadás alapértelmezés szerint letiltja a csoportokat. A(z) --report-azdo-groups on paramétert csak egyetlen assemblyhez vagy sorosított assembly-végrehajtáshoz adja át.
Megjegyzés:
Az MTP-verzió oszlop felsorolja az egyes beállításokat tartalmazó első MTP-verziót. Maga az Azure DevOps-bővítmény az MTP 1.9.0-ban vált stabillá a --report-azdo és --report-azdo-severity használatával; a többi lehetőséget az MTP 2.3.0-ban vagy 2.4.0-ban adták hozzá.
A bővítmény a környezeti változó ellenőrzésével TF_BUILD automatikusan észleli, hogy folyamatos integrációs (CI) környezetben fut.
Az MTP 2.4.0-tól kezdve Azure DevOps Markdown-összegzések összesítik az eredményeket az összes tesztmodulban egy dotnet test meghívásban. Ha a kódlefedettség is engedélyezve van, az összegzés tartalmazza a fedezett és a teljes számokat, a százalékos értékeket, a küszöbérték-eredményeket, valamint egy mutatót, ha a lefedettségi adatok részlegesek.
GitHub Actions jelentések
A GitHub Actions-jelentés a GitHub Actions natív munkafolyamat-parancsait adja ki, így a tesztfuttatások elsőrangú élményt nyújtanak a futtatókörnyezetben: összeállításonkénti naplócsoportokat, sikertelen és kihagyott tesztek annotációit (amelyek a munkafolyamat Annotations lapján jelennek meg, illetve amikor a forráshely feloldható, a lekérési kérelem Files changed diffjében is), a GITHUB_STEP_SUMMARY által hivatkozott fájlhoz hozzáfűzött Markdown-formátumú feladat-összefoglalót, valamint a lassú tesztekre vonatkozó értesítéseket.
A bővítményhez szükség van a Microsoft.Testing.Extensions.GitHubActionsReport NuGet-csomagra.
A bővítmény csak akkor aktiválódik, ha a futtatás GitHub Actions van (a GITHUB_ACTIONS környezeti változó true) és a --report-gh kapcsoló be van állítva; ellenkező esetben semmit sem tesz. Ha be van kapcsolva, minden funkció alapértelmezés szerint engedélyezett, és a saját --report-gh-* beállításával külön-külön kikapcsolható.
Important
Az --report-gh beállítás ehhez tartozik: Microsoft.Testing.Extensions.GitHubActionsReport. A GitHubActionsTestLogger csomag egy másik lehetőséget kínál. --report-github A beállítások nem aliasok, és csak akkor működnek, ha a tesztprojekt regisztrálja azt a csomagot, amely a beállítás tulajdonosa.
Megjegyzés:
A bővítmény az MTP 2.3.0-tól érhető el. Az MTP 2.4.0-tól kezdve a nyilvános belépési pontok már nem kísérleti jellegűek.
Manuális regisztráció
var builder = await TestApplication.CreateBuilderAsync(args);
builder.AddGitHubActionsProvider();
Beállítások
| Lehetőség | MTP-verzió | Description |
|---|---|---|
--report-gh |
2.3.0 | Engedélyezi a GitHub Actions jelentésgenerátort, így a teszt munkafolyamat-parancsokat bocsát ki. A futtatásnak a GitHub Actionsben kell történnie. |
--report-gh-groups |
2.3.0 | Engedélyezi vagy letiltja a szerelvényenkénti naplócsoportokat. Az érvényes értékek az (alapértelmezett) és a onoff. Szükséges --report-gh. |
--report-gh-annotations |
2.3.0 | Engedélyezi vagy letiltja a sikertelen és kihagyott tesztekhez tartozó széljegyzeteket. Az érvényes értékek az (alapértelmezett) és a onoff. Szükséges --report-gh. |
--report-gh-step-summary |
2.3.0 | Azt szabályozza, hogy a bővítmény egy Markdown-feladat összefoglalását írja-e a hivatkozott GITHUB_STEP_SUMMARYfájlba. Az érvényes értékek: on (alapértelmezett), off, valamint az MTP 2.4.0-tól kezdve on-failure. Szükséges --report-gh. |
--report-gh-step-summary-sections |
2.4.0 | Az összefoglaló tartalom kiválasztása. Az érvényes értékek a következők test-results: , slow-tests, coverageés all (alapértelmezett). Használatához off és a --report-gh módtól eltérő összegzési mód szükséges. |
--report-gh-slow-test-notices |
2.3.0 | Engedélyezi vagy letiltja a lassú tesztelési értesítéseket. Az érvényes értékek az (alapértelmezett) és a onoff. Szükséges --report-gh. |
--report-gh-slow-test-threshold |
2.3.0 | A teszt futási időtartama a lassú tesztről szóló értesítés kibocsátása előtt. Elfogad egy önmagában megadott másodpercértéket, illetve egy mértékegység-utótaggal ellátott értéket, például 90s, 2m vagy 1.5h. Az alapértelmezett érték a 60s. Szükséges --report-gh. |
Az MTP 2.4.0-tól kezdve GitHub Actions Markdown-összegzések összesítik az eredményeket egy dotnet test meghívás minden tesztmoduljában. Ha a kódlefedettség is engedélyezve van, jelölje ki coverage vagy all adja meg a fedezeti és teljes számokat, százalékértékeket, küszöbérték-eredményeket, valamint egy mutatót, ha a lefedettségi adatok részlegesek.