powershell - 如何排除 Pester 配置中的路径?
问题描述
我们有一个模块的目录结构,如下所示:
C:\Program Files\WindowsPowerShell\Modules\Toolbox.CustomModule1
C:\Program Files\WindowsPowerShell\Modules\Toolbox.CustomModule2
C:\Program Files\WindowsPowerShell\Modules\ModuleDownloaded
C:\Program Files\WindowsPowerShell\Modules\ModuleDownloadedOther
所有以“工具箱”开头的 PowerShell 模块。是我们创建的,也是唯一需要用 Pester 5 测试的。我希望可以使用通配符:
$config = [PesterConfiguration]@{
Run = @{
Path = "C:\Program Files\WindowsPowerShell\Modules\Toolbox.*"
}
}
Invoke-Pester -Configuration $config
但上述失败,因为通配符不支持在Path
. 由于下载的模块与 Pester 5 不兼容,使用 onlyC:\Program Files\WindowsPowerShell\Modules
也失败了。因此,我偶然发现了以下文档:
$test = [PesterConfiguration]::Default
$test.Filter | Format-List
标签:描述、上下文或要运行的标签。(System.String[],默认值:System.String[]) ExcludeTag :要从运行中排除的 Describe、Context 或 It 的标签。(System.String[],默认值:System.String[]) Line :按文件和脚本块开始行过滤,有助于以编程方式运行已解析的测试以避免扩展名称出现问题。示例:'C:\tests\file1.Tests.ps1:37'(System.String[],默认值:System.String[]) FullName:测试的全名,带有 -like 通配符,由点连接。示例:'*.describe Get-Item.test1'(System.String[],默认值:System.String[])
但这似乎并没有谈论完整的文件名。有没有一种简单的方法可以做到这一点(而不是简单的foreach
,而是从PesterConfiguration
自身内部?
解决方案
似乎是Pester 5.1 中的一个错误。支持通配符,它将在新版本中得到修复。
推荐阅读
- python - 使用 Tkinter Scale 小部件刷新动画图
- android-mediaplayer - 单击新活动时如何停止第一个活动的声音
- c# - JSON(反序列化)将空值发送到列表
- c++ - 最小化 lambda 表达式的对象范围
- c - 用c语言从字符串中删除一个字符,得到冲突类型错误
- bash - 使用 bash 将行号添加到最终的非空行
- ios - UITableViewCell 堆叠图层
- android - Nexus 4 API 22 模拟器使用媒体播放器显示白屏
- azure-machine-learning-studio - 导入 html 文本时缺少分隔符错误
- go - 如何在 golang 中使用自签名证书设置 https 服务器