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 ในสคริปต์นี้ ใช้บล็อก Describe และ It ของ Pester เพื่อกำหนดกรณีทดสอบ:

# นำเข้าฟังก์ชันที่จะทดสอบ
. .\MyFunction.ps1

Describe "ทดสอบ Get-MultipliedNumber" {
    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 ของคุณทำงานตามที่คาดหวังในสถานการณ์ที่คุณทดสอบ