简体   繁体   中英

Where does Pester's Invoke-Pester reside?

According to this documentation it should be possible to measure code coverage using Pester.

PS C:\path\to\codeCoverage> Invoke-Pester .\CoverageTest.Tests.ps1 -CodeCoverage .\CoverageTest.ps1

Invoke-Pester : The term 'Invoke-Pester' is not recognized as the name of a cmdlet, function, script file, or operable
program. Check the spelling of the name, or if a path was included, verify that the path is correct and try again.
At line:1 char:1
+ Invoke-Pester .\CoverageTest.Tests.ps1 -CodeCoverage .\CoverageTest.ps1
+ ~~~~~~~~~~~~~
    + CategoryInfo          : ObjectNotFound: (Invoke-Pester:String) [], CommandNotFoundException
    + FullyQualifiedErrorId : CommandNotFoundException

After reading this documentation it was clear that the Pester module needs to be imported before running Invoke-Pester

PS C:\path\to\codeCoverage> Import-Module "C:\ProgramData\Chocolatey\lib\pester.3.1.1\tools\Pester.psm1"
PS C:\path\to\codeCoverage> Invoke-Pester .\CoverageTest.Tests.ps1 -CodeCoverage .\CoverageTest.ps1
Executing all tests in 'C:\Users\r\Desktop\codeCoverage\CoverageTest.Tests.ps1'
Describing Demonstrating Code Coverage
 [+] Calls FunctionOne with no switch parameter set 1.8s
 [+] Calls FunctionTwo 287ms
Tests completed in 2.09s
Passed: 2 Failed: 0 Skipped: 0 Pending: 0

Code coverage report:
Covered 60.00 % of 5 analyzed commands in 1 file.

Missed commands:

File             Function    Line Command
----             --------    ---- -------
CoverageTest.ps1 FunctionOne    5 return 'SwitchParam was set'
CoverageTest.ps1 FunctionTwo   16 return 'I do not'

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM