c# - 使用 FluentAssertions 时有没有办法减少堆栈跟踪(噪音)?
问题描述
我在 .dotnet 核心项目中使用FluentAssertions库。我真的很感激我可以轻松阅读和理解这个“语法”的测试。
我正在用 VSCode 开发这个项目;它实际上用完了一个 Docker 容器。
对于连续测试,我从控制台窗口运行:
dotnet watch --project ./test-project test
当测试失败时,我会在输出中获得完整的堆栈跟踪。这可以达到十行或更多行,其中大部分与实际的FluentAssertions
库异常直接相关,而不是被测试的代码。这是很多我不需要或不想要的噪音。首先,这意味着我需要将注意力从代码中移开,并处理滚动并查找失败测试的详细信息。
有没有办法使堆栈跟踪静音?
或者,是否有其他工具可以与 VSCode 一起使用来可视化错误,而不必使用控制台输出。
为了不完整,我还应该指出我正在使用 xUnit 和 dotnet-test-explorer 扩展。
解决方案
我有一个答案——xUnit 和 dotnet-test-explorer 不能很好地开箱即用。
我不得不:
- 确保我的程序集名称与根命名空间匹配
- 启用扩展观看
"dotnet-test-explorer.autoWatch": true
- 设置测试项目的路径
"dotnet-test-explorer.testProjectPath": "src/Tests/*.csproj"
- 设置命令行参数以使装订线扩展再次工作
"dotnet-test-explorer.testArguments": "/p:CollectCoverage=true /p:CoverletOutputFormat=lcov /p:CoverletOutput=./lcov.info "
文件有时lcov.info
会被清除,不确定直接原因,但足够简单的修复 - 删除 0byte 文件并刷新测试列表。
当资源管理器做它自己的事情时,将尝试dotnet watch ...
从控制台运行生成覆盖参数。
虽然这不能回答最初的问题,但它确实为我提供了一个可行的解决方案,我可以接受。
推荐阅读
- javascript - Javascript:根据一定的高度和宽度创建空白图像并获取base64
- excel - ExcelDataReader 更改列名
- python - TypeError:无法解压不可迭代的 Race 对象
- c# - 如何在wfa C#中设置显示工具提示的位置
- html - 忽略样式属性的内容安全策略随机数
- typescript - 从函数类型中省略返回类型?
- r - 为什么子集包含 NA 行但过滤器不包含?
- matrix - Power BI - Matrix Visual - 根据时间戳折叠到最新记录
- antlr - 当存在相似模式时,ANTLR 无法正确匹配模式
- polkadot - Polkadot-JS 导入带派生的 BIP44 地址?