pester/Pester — pull request #139 by dlwyatt (2014-06-12 23:57:40+00:00)
Title: Scope Isolation and Direct Test Execution

Test scripts are now executed in the caller's scope, instead of in Pester's module scope. This means that the only Pester functions and variables available to the SUT will be the ones that Pester exports, and that tests won't fail if the file happens to use variables that match the names of internal Pester parameters ($test, etc.)
Note: Some of pester's own test scripts are intended to be able to access its internal implementation details, and a mechanism for executing these tests has also been added:

& (Get-Module Pester) InModuleScope {
Describe "Description" {
# etc
}
}

Test script files can now be executed directly, if desired. However, doing so gives up most of the functionality offered by Invoke-Pester. When executing a test file this way, you no longer get a summary of tests passed / failed, can't output to NUnit or use -Passthru, etc.