Powershell Azure Pester测试

时间:2017-10-21 22:19:37

标签: unit-testing powershell pester

下面是一个简单的函数,它只创建一个资源组并导出数据。我正在尝试学习单元测试,但我似乎无法弄明白。

是否可以提供测试模拟数据?我可以测试输出文件是否有用吗?

function New-AzureRG{

    param([string]$rgName,
     [string]$location

    )

$getData =  New-AzureRmResourceGroup -Name $rgName -location 'WestEurope'

$getData | Export-Csv $location

}


Describe "New-AzureRG" {
    Context "Function Exists" {
        It "Should return a message" {
        $sum = New-AzureRG -rgName testRG -location C:\tst\testsc.csv
        ($um).Name | Should Be "testRG"
        }
    }
}

这是我用pester进行测试的可怕尝试。出于某种原因,测试实际上是在做,而不是将其作为测试。我只是困惑:(。

1 个答案:

答案 0 :(得分:0)

我不认为您的测试确实有效。例如,在测试中没有分配$ um ...如果在当前测试中模拟New-AzureRG函数,则表示您没有测试任何内容。我想你想要的东西:

创建一个函数c

从其他功能调用该功能

在测试中模拟New-AzureRG功能

你嘲笑可以看起来像:

Mock New-AzureRG { return @{Name = "NameRG"} } -ParameterFilter { $Name -eq "NameRG" }