我尝试测试设置SharePoint列表项的属性值的PowerShell命令(Set-PropertyValue
)。该函数使用Invoke-WebMethod
函数对实际工作做。
我当前的Set-PropertyValue.Test.ps1
档案:
# include stuff omitted
Describe 'Set-PropertyValue' {
#
# arrange
#
# set $url, $list, $id, $property variables
...
# the value that it should be
$expected=10.5
BeforeEach {
# get the property's current value
$original = Get-PropertyValue $url $list $id $property
}
AfterEach {
# restore original value
Set-PropertyValue $url $list $id $property $original
}
It "Should set a property's value" {
#
# act
#
# update property's value
$response = Set-PropertyValue $url $list $id $property $expected
# get the new value
$actual = Get-PropertyValue $url $list $id $property
#
# assert
#
$response.statuscode | should be 204 # no content
$actual | Should Be $expected
} # It
} # Describe
我不喜欢这个原因有很多:
Get-PropertyValue
有更好的方法来测试吗?
答案 0 :(得分:0)
一种方法:
Functions
)PsFoo.psm1
); '点源'每个命令的脚本文件(例如Functions\Invoke-Foo.ps1
),但不包括单元测试文件(例如Functions\Invoke-Foo.Tests.ps1
)。 PsFoo.Tests.ps1
),其中包含点源'模块文件并包含所有集成测试。PS> Invoke-Pester
将运行集成测试(在PsFoo.Tests.ps1
中)和单元测试(在Functions\*.Tests.ps1
中)。