mirror of
https://github.com/microsoft/terminal.git
synced 2025-12-30 03:00:40 -05:00
Moves the tests from using the `vstest.console.exe` route to just using `te.exe`. PROs: - `te.exe` is significantly faster for running tests because the TAEF/VSTest adapter isn't great. - Running through `te.exe` is closer to what our developers are doing on their dev boxes - `te.exe` is how they run in the Windows gates. - `te.exe` doesn't seem to have the sporadic `0x6` error code thrown during the tests where somehow the console handles get lost - `te.exe` doesn't seem to repro the other intermittent issues that we have been having that are inscrutable. - Fewer processes in the tree (te is running anyway under `vstest.console.exe`, just indirected a lot - The log outputs scroll live with all our logging messages instead of suppressing everything until there's a failure - The log output is actually in the order things are happening versus vstest. CONs: - No more code coverage. - No more test records in the ADO build/test panel. - Tests really won't work inside Visual Studio at all. - The log files are really big now - Testing is not a test task anymore, just another script. Refuting each CON: - We didn't read the code coverage numbers - We didn't look at the ADO test panel results or build-over-build velocities - Tests didn't really work inside Visual Studio anyway unless you did the right incantations under the full moon. - We could tone down the logging if we wanted at either the te.exe execution time (with a switch) or by declaring properties in the tests/classes/modules that are very verbose to not log unless it fails. - I don't think anyone cares how they get run as long as they do.
15 lines
453 B
PowerShell
15 lines
453 B
PowerShell
[CmdLetBinding()]
|
|
Param(
|
|
[Parameter(Mandatory=$true, Position=0)][string]$MatchPattern,
|
|
[Parameter(Mandatory=$true, Position=1)][string]$Platform,
|
|
[Parameter(Mandatory=$true, Position=2)][string]$Configuration
|
|
)
|
|
|
|
$testdlls = Get-ChildItem -Path ".\bin\$Platform\$Configuration" -Recurse -Filter $MatchPattern
|
|
|
|
&".\bin\$Platform\$Configuration\te.exe" $testdlls.FullName
|
|
|
|
if ($lastexitcode -Ne 0) { Exit $lastexitcode }
|
|
|
|
Exit 0
|