PowerShell:
테스트 작성하기

방법:

PowerShell에는 내장된 테스팅 프레임워크가 없지만, 많은 사람들이 사용하는 인기 있는 서드파티 모듈인 Pester를 사용하여 테스트를 작성하고 실행합니다. 여기에서는 Pester를 사용하여 PowerShell 함수를 테스트하는 방법을 소개합니다.

먼저, 아직 Pester를 설치하지 않았다면 설치하세요:

Install-Module -Name Pester -Scope CurrentUser -Force

다음으로, 테스트하고 싶은 간단한 PowerShell 함수가 MyFunction.ps1로 저장되어 있다고 가정합니다:

function Get-MultipliedNumber {
    param (
        [int]$Number,
        [int]$Multiplier = 2
    )

    return $Number * $Multiplier
}

이 함수를 Pester로 테스트하려면, MyFunction.Tests.ps1이라는 테스트 스크립트를 생성합니다. 이 스크립트에서 Pester의 DescribeIt 블록을 사용하여 테스트 케이스를 정의하세요:

# 테스트할 함수를 임포트
. .\MyFunction.ps1

Describe "Get-MultipliedNumber tests" {
    It "곱셈기가 제공되지 않을 때 숫자를 2배로 곱한다" {
        $result = Get-MultipliedNumber -Number 3
        $result | Should -Be 6
    }

    It "주어진 곱셈기로 숫자를 올바르게 곱한다" {
        $result = Get-MultipliedNumber -Number 3 -Multiplier 3
        $result | Should -Be 9
    }
}

테스트를 실행하려면, PowerShell을 열고 테스트 스크립트가 있는 디렉토리로 이동한 다음, Invoke-Pester 명령을 사용하세요:

Invoke-Pester .\MyFunction.Tests.ps1

샘플 출력은 다음과 같으며, 테스트가 통과했는지 실패했는지를 나타냅니다:

1개 파일에서 발견 시작.
발견 완료: 152ms.
[+] C:\path\to\MyFunction.Tests.ps1 204ms (182ms|16ms)
테스트 완료: 204ms
테스트 통과: 2, 실패: 0, 건너뛴 것: 0 실행되지 않음: 0

이 출력은 두 테스트 모두 통과했음을 보여주며, 테스트한 시나리오 하에서 Get-MultipliedNumber 함수가 예상대로 동작한다는 확신을 줍니다.