Um ein Skript in PowerShell zu entwickeln, muss ich eine externe ausführbare Datei (.exe) aufrufen. Derzeit entwickle ich dieses Skript mit einem TDD-Ansatz, daher muss ich die aufgerufene .exe-Datei vortäuschen.Wie spottet man einen Aufruf einer exe-Datei mit Pester?
Ich versuche dies:
Describe "Create-NewObject" {
Context "Create-Object" {
It "Runs" {
Mock '& "c:\temp\my.exe"' {return {$true}}
Create-Object| Should Be $true
}
}
}
ich diese Antwort bekam:
Describing Create-NewObject
Context Create-Object
[-] Runs 574ms
CommandNotFoundException: Could not find Command & "C:\temp\my.exe"
at Validate-Command, C:\Program Files\WindowsPowerShell\Modules\Pester\Functions\Mock.ps1: line 801
at Mock, C:\Program Files\WindowsPowerShell\Modules\Pester\Functions\Mock.ps1: line 168
at <ScriptBlock>, C:\T\Create-NewObject.tests.ps1: line 13
Tests completed in 574ms
Passed: 0 Failed: 1 Skipped: 0 Pending: 0 Inconclusive: 0
Gibt es eine Möglichkeit, diese Art von Anrufen zu verspotten, ohne sie in einer Funktion kapseln?
Vergessen Sie nicht, „annehmen“, um Ihre eigenen Antworten :) –