Skip to content

Automatiserade tester

Karl Thorén edited this page Oct 24, 2026 · 1 revision

Automatiserade tester

Enhetstesterna körs med Pester 5 eller senare. Installera Pester för din användare från PowerShell:

Install-Module Pester -MinimumVersion 5.0.0 -Scope CurrentUser -Force

Kör testerna med kodtäckningsanalys från projektets rot:

$config = New-PesterConfiguration
$config.Run.Path = './tests'
$config.Run.Exit = $false
$config.CodeCoverage.Enabled = $true
$config.CodeCoverage.Path = @(
    './Office365-Scoutnet-synk/*.ps1',
    './Office365-Scoutnet-synk/*.psm1'
)
$config.CodeCoverage.OutputFormat = 'JaCoCo'
$config.CodeCoverage.OutputPath = 'coverage.xml'
$config.Output.CIFormat = 'Auto'
Invoke-Pester -Configuration $config

$config.Run.Exit = $true avslutar PowerShell-processen när testerna är klara. Använd därför inte den inställningen i en interaktiv terminal; den används i GitHub Actions för att avsluta teststeget med rätt statuskod.

Pester visar täckningsgraden i terminalen och skapar JaCoCo-rapporten coverage.xml i projektroten.

Samma tester körs automatiskt i GitHub Actions vid push och pull request mot master. Workflowen publicerar XML-rapporten och en HTML-rapport som artifact pester-coverage för varje körning. Ladda ner och packa upp artifactet från GitHub Actions-körningen och öppna coverage-report/index.html i en webbläsare.

Clone this wiki locally