PowerShell:
টেস্ট লিখা

কিভাবে:

PowerShell-এ বিল্ট-ইন টেস্টিং ফ্রেমওয়ার্ক নেই, কিন্তু Pester, একটি জনপ্রিয় তৃতীয়-পক্ষের মডিউল, লেখা ও রান করা টেস্টের জন্য ব্যাপকভাবে ব্যবহৃত হয়। এখানে আপনার PowerShell ফাংশন টেস্ট করার জন্য Pester দিয়ে শুরু করার উপায় দেওয়া হল:

প্রথমে, আপনি যদি এখনও 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-এর Describe এবং It ব্লকগুলি ব্যবহার করে টেস্ট কেসগুলি ডিফাইন করুন:

# টেস্ট করার জন্য ফাংশন ইম্পোর্ট করুন
. .\MyFunction.ps1

Describe "Get-MultipliedNumber tests" {
    It "কোন গুণকক প্রদান না করা হলে ২ দ্বারা সংখ্যা গুণ করে" {
        $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

নমুনা আউটপুট এই রকম দেখাবে, যা নির্দেশ করবে আপনার টেস্টগুলো পাস হয়েছে কিনা বা ব্যর্থ হয়েছে:

Starting discovery in 1 files.
Discovery finished in 152ms.
[+] C:\path\to\MyFunction.Tests.ps1 204ms (182ms|16ms)
Tests completed in 204ms
Tests Passed: 2, Failed: 0, Skipped: 0 NotRun: 0

এই আউটপুট দেখিয়ে দেয় যে উভয় টেস্টই পাস হয়েছে, যা আপনাকে আস্থা দেয় যে আপনার Get-MultipliedNumber ফাংশন আপনি যে পরিস্থিতিগুলি পরীক্ষা করেছেন তাতে প্রেক্ষাপট অনুযায়ী আচরণ করছে।