使用 Pester PowerShell 进行全局模拟

Global Mock with Pester PowerShell

我已经使用 PesterHelpers 为我的模块构建了一套测试,并开始添加功能测试。我 运行 根据需要使用最小、标准和完整测试脚本来测试我的工作。我发现我一遍又一遍地使用相同的模拟,将它们从一个脚本复制到另一个脚本。是否可以创建一个全局模拟,所有测试脚本都可以在 Public 和私有目录中使用?

您可以将您的模拟放入另一个文件并将它们点源到您的脚本中:

. .\mocks.ps1

这会在您的脚本中减少一些重复,但也会使它们更加晦涩难懂。

我认为 Pester 中没有任何以更全局的方式声明 Mock 的概念,因为我相信它们的范围仅限于它们在其中声明的每个描述或上下文块。

(Resolve-Path ($PSScriptRoot + "\..\..\..\AOI\UDT\testfile.text"))

用这个。您将能够在任何地方使用您的文件。