![](/img/trans.png)
[英]How to mock a powershell function with mandatory parameters in pester
[英]How to write Pester tests for my PowerShell function
我有以下功能:对于这个功能,我需要编写一个具有100%覆盖率的Pester代码。
function buildFilterString {
[CmdletBinding()]
param (
[string] $input_str,
[char] $delimiter
)
$out = $null
$input_str -split $delimiter | ForEach-Object {
$item = $_
$out += "'" + $item + "',"
}
$out.Substring(0,$out.Length-1)
}
据我所知,测试应该是这样的,但我不确定如何在测试中编写“不同的情况”。
$moduleRoot = Resolve-Path "$PSScriptRoot\.."
$moduleName = Split-Path $moduleRoot -Leaf
$cred = Get-Credential
Describe "Demonstarting Code Coverage of: $moduleName" {
It "Calls Function: builedFilterString" {
{buildFilterString -input_str "happy" -delimiter ';'} | Should Be
"happy"
}
}
在这种情况下,您只需要确保-input_str
包含指定的-delimiter
并且涵盖了所有代码。 您可以保持所述的情况-input_str
不包含指定的-delimiter
,以测试边缘情况(顺便说一下,因为$out
将保持$null
)。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.