Pester 5测试失败输出过长德语堆栈追踪如何恢复简洁输出?
解决方法
这个现象是Pester 5.x的输出配置项StackTraceVerbosity设置不当导致的,该参数控制错误输出中堆栈追踪的详细程度,你看到的德语堆栈是PowerShell跟随系统区域语言输出的Pester内部调用栈,不需要修改系统语言,只要调整Pester的堆栈输出配置即可恢复简洁效果。
临时生效(单次运行测试时使用)
执行测试命令时直接指定参数即可:
Invoke-Pester -Path .\BasicPester.tests.ps1 -StackTraceVerbosity Filtered
Filtered参数值代表仅输出你编写的测试脚本内的报错行位置,过滤所有Pester内部的调用堆栈,完全匹配你预期的默认输出效果。如果设置为None则会连测试脚本的报错行位置也隐藏,不推荐使用。
永久生效(所有Pester运行默认使用该配置)
可以把以下配置写入你的PowerShell Profile文件,或者测试脚本的开头:
# 初始化Pester默认配置 $PesterPreference = [PesterConfiguration]::Default # 设置堆栈输出详细程度为过滤模式 $PesterPreference.Output.StackTraceVerbosity = 'Filtered'
配置后所有Pester测试运行都会默认输出简洁的错误结果,不会再出现多余的系统语言内部堆栈。
内容的提问来源于stack exchange,提问作者bad
相关产品推荐
相关产品推荐

