Sdílet prostřednictvím


PublishCodeCoverageResults@2 – Publikování výsledků pokrytí kódu v2

Tuto úlohu použijte k získání výsledků pokrytí kódu z sestavení.

Syntax

# Publish code coverage results v2
# Publish any of the code coverage results from a build.
- task: PublishCodeCoverageResults@2
  inputs:
    summaryFileLocation: # string. Required. Path to summary files. 
    #pathToSources: # string. Path to Source files. 
    #failIfCoverageEmpty: false # boolean. Fail if code coverage results are missing. Default: false.

Vstupy

summaryFileLocation - Cesta k souhrnným souborům
string. Požadovaný.

Určuje cestu souhrnného souboru obsahujícího statistiky pokrytí kódu, jako je řádek, metoda a pokrytí třídy. Několik souhrnných souborů se sloučí do jedné sestavy. Hodnota může obsahovat vzory minimatch. Příklad: $(System.DefaultWorkingDirectory)/MyApp/**/site/cobertura/coverage.xml. Další informace o minimatch vzorech.


pathToSources - cesta ke zdrojovým souborům
string.

Zadání cesty ke zdrojovým souborům se vyžaduje, když sestavy XML pokrytí neobsahují absolutní cestu ke zdrojovým souborům. Například sestavy JaCoCo nepoužívají absolutní cesty, takže při publikování pokrytí JaCoCo pro aplikace v Javě se vzor podobá $(System.DefaultWorkingDirectory)/MyApp/src/main/java/. Tento vstup by měl odkazovat na absolutní cestu ke zdrojovým souborům na hostiteli. Například $(System.DefaultWorkingDirectory)/MyApp/.

Tento vstup lze použít, pokud se testy spouští v kontejneru Dockeru.


failIfCoverageEmpty - Selhání, pokud chybí výsledky pokrytí kódu
boolean. Výchozí hodnota: false.

Pokud pokrytí kódu nezveřejňovalo žádné výsledky k publikování, úloha selže.


Možnosti řízení úkolů

Všechny úkoly mají kromě vstupů úkolů také možnosti řízení. Další informace naleznete v tématu Možnosti ovládacího prvku a běžné vlastnosti úloh.

Výstupní proměnné

Žádný.

Poznámky

Tuto úlohu můžete použít v kanálu buildu k publikování výsledků pokrytí kódu vytvořených při spouštění testů do Azure Pipelines nebo TFS a po vygenerování souborů XML pokrytí za účelem získání informací o pokrytí kódu v kanálu. Úloha podporuje formáty XML generované pokrytím kódu. Tato úloha vygeneruje soubor cjson, který obsahuje podrobnosti pokrytí kódu. Vytvoří také sestavu HTML pokrytí kódu v rámci artefaktů sestavení.

Tato úloha je podporována pouze v kanálech buildu, nikoli v kanálech verze.

Úlohy jako Visual Studio Test, .NET Core, Ant, Maven, Gulpa Grunt také poskytují možnost publikovat data pokrytí kódu do kanálu. Pokud tyto úlohy používáte, nepotřebujete v kanálu samostatnou úlohu Publikovat výsledky pokrytí kódu.

Předpoklad: Pokud chcete v kanálu použít úlohu Publikovat výsledky pokrytí kódu v2, použijte v kanálu úlohu dotnet 7.0.x jako předpoklad. Před úlohou Publikovat pokrytí kódu v2 použijte úlohu dotnet core.

Požadavky

Konfigurace požadavků pomocí kanálu YAML:

# Dotnet core sdk task 7.0.x
- task: UseDotNet@2
  displayName: 'Use .NET Core sdk 7.0.x'
  inputs:
    version: 7.0.x

Konfigurace požadavků pomocí návrháře:

snímek obrazovky znázorňující úlohu sady .Net Core SDK v kanálu

  1. Pomocí následujícího nastavení nakonfigurujte úlohu Publikovat výsledky pokrytí kódu verze 2.

    snímek obrazovky znázorňující úlohu Publikovat výsledky pokrytí kódu v2

  2. Po dokončení sestavení a úspěšné dokončení úlohy Výsledky pokrytí kódu v2 vyberte kartu Pokrytí kódu v souhrnu spuštění kanálu a zobrazte výsledky pokrytí kódu.

    snímek obrazovky znázorňující kartu Pokrytí kódu vygenerovanou úlohou Publikovat kód v2

Výsledky pokrytí kódu pro JavaScript s Istanbulem pomocí YAML

Pokud chcete publikovat výsledky pokrytí kódu pro JavaScript s istanbulem pomocí YAML, přečtěte si téma Přizpůsobení javascriptových v části Ekosystémy v těchto tématech, včetně příkladů pro jiné jazyky.

Podívejte se na příklad publikování pokrytí kódu pomocí Cobertura.

Dokař

U aplikací, které používají Docker, se můžou sestavení a testy spouštět uvnitř kontejneru a generovat výsledky pokrytí kódu v rámci kontejneru. Aby bylo možné publikovat výsledky do kanálu, měly by být výsledné artefakty zpřístupněny publikování výsledků pokrytí kódu úloze. Pro referenci můžete vidět podobný příklad publikování výsledků testu v části Sestavení, testování a publikování výsledků v souboru Dockeru pro Docker.

Zobrazení výsledků

Pokud chcete zobrazit výsledky pokrytí kódu v kanálu, přečtěte si Kontrola výsledků pokrytí kódu.

Známé problémy

Úloha publikování pokrytí kódu v2 vygeneruje soubor cjson a publikuje sestavu pokrytí kódu na kartě pokrytí kódu. Vytvoří také artefakty sestavení, což je sada souborů HTML, které jsou propojeny z hlavního index.html souboru. Pokud se kartě pokrytí kódu nepodaří zobrazit sestavu pokrytí kódu, zkontrolujte, jestli je vstupní soubor XML pokrytí kódu ve správném formátu a obsahuje platné podrobnosti.

Požadavky

Požadavek Popis
Typy kanálů YAML, klasické sestavení
Běží na Agent
požadavky Žádný
možnosti Tento úkol nesplňuje žádné požadavky na následné úkoly v úloze.
omezení příkazů Jakýkoliv
nastavitelné proměnné Jakýkoliv
Verze agenta 2.144.0 nebo vyšší
Kategorie úkolu Test

Viz také