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
ब्लॉकों का उपयोग करके परीक्षण मामलों को परिभाषित करिए:
# Import the function to test
. .\MyFunction.ps1
Describe "Get-MultipliedNumber tests" {
It "Multiplies number by 2 when no multiplier is provided" {
$result = Get-MultipliedNumber -Number 3
$result | Should -Be 6
}
It "Correctly multiplies number by given multiplier" {
$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
फंक्शन आपके द्वारा परीक्षण किए गए परिदृश्यों के तहत उम्मीद के मुताबिक व्यवहार करता है।