VS Code testing 怎样只运行当前测试文件
来源:17golang原创
时间:2026-10-24 20:00:31 162浏览 收藏
在 VS Code 里只跑当前测试文件,最稳妥的做法是先让测试扩展完成发现,再用 Testing 视图的当前文件筛选,或者从命令面板执行 Test: Run Tests in Current File。不要直接点击测试树顶部的全局运行按钮,否则它通常会覆盖整个工作区中已发现的测试。
官方地址:https://code.visualstudio.com/docs/debugtest/testing
下面的步骤以“编辑器当前打开的是目标测试文件”为前提。不同语言的测试扩展名称可能不同,但判断标准一致:测试树里能看到目标文件,运行后结果只落在这一文件的节点上。
准备好目标测试文件和测试发现
打开要执行的测试文件,然后点击左侧活动栏的烧杯图标进入 Testing 视图。如果看不到烧杯图标,可以打开命令面板,执行 Testing: Focus on Test Explorer View。
第一次进入时,测试扩展可能还在发现测试。等文件节点出现后,再继续筛选。若测试树为空,先检查项目是否安装了对应语言或测试框架扩展;VS Code 的通用 Testing 能力依赖这些扩展完成测试发现。
步骤一:选择 Testing 入口和当前文件范围
在 Testing 视图工具栏点击 Filter,选择只显示当前文件的选项。此时测试树应从“工作区、文件夹、文件、测试”这样的完整层级,缩小到当前编辑器对应的测试文件。

筛选只改变测试树的显示范围,真正执行时仍要点当前文件节点右侧的运行按钮,或使用扩展提供的当前文件命令。确认标题栏显示的是目标文件后再运行,能减少误点“运行全部测试”的机会。
步骤二:预览范围后提交当前文件运行
按 ⇧⌘P(Windows/Linux 使用 Ctrl+Shift+P)打开命令面板,搜索 Test: Run Tests in Current File 并执行。这个命令是否出现,取决于当前语言测试扩展;如果搜索不到,不要把 Test: Run All Tests 当成替代命令。
也可以在筛选后的 Testing 视图中,点击当前文件节点旁的运行按钮。两种方式的共同点是运行范围绑定到当前文件,而不是整个工作区。
步骤三:下载式查看输出并核对结果
运行结束后,查看测试树中文件节点的状态图标,再点击 Show Output 或打开 Test Results。重点核对三件事:目标文件下的测试数量是否变化、结果面板是否只列出本次文件的测试、其它文件是否没有被新一轮标记。

如果只想缩小到一个测试方法,可以直接使用编辑器测试代码左侧的行号旁运行控件;它的范围比“当前文件”更小。运行失败时,优先打开测试输出查看测试扩展给出的错误,再判断是测试本身失败还是测试发现没有完成。
命令缺失或范围仍然过大怎么办
先在 Testing 视图点击刷新测试,或执行 Test Explorer: Reload tests。刷新后仍没有目标文件,通常是测试扩展没有识别当前文件、测试框架配置不完整,或当前文件并不是扩展约定的测试文件名。
如果命令存在但运行了其它文件,先关闭当前文件筛选并重新打开,再确认当前编辑器标签和测试树文件节点一致。不要修改全局测试设置来解决一次性的范围问题;只有当编辑器行号旁的运行控件也不出现时,才需要进一步检查语言扩展的测试设置。
常见疑问
为什么我看到了当前文件筛选,却仍然运行了全部测试?筛选是显示条件,不等同于执行命令。请点击当前文件节点的运行按钮,或使用测试扩展提供的 Test: Run Tests in Current File。
当前文件命令为什么搜不到?VS Code 的测试功能由语言或测试框架扩展补充。先确认扩展已安装并完成测试发现;没有该命令时,可以使用当前文件节点或编辑器行号旁的运行控件。
记住一个简单判断:看到的是“当前文件”,点的也必须是“当前文件节点的运行动作”,最后再用 Test Results 核对结果范围。
-
467 收藏
-
418 收藏
-
356 收藏
-
461 收藏
-
156 收藏
-
477 收藏
-
469 收藏
-
441 收藏
-
238 收藏
-
365 收藏
-
216 收藏
-
291 收藏
-
413 收藏
-
471 收藏
-
444 收藏
-
261 收藏
-
499 收藏
-
- 前端进阶之JavaScript设计模式
- 设计模式是开发人员在软件开发过程中面临一般问题时的解决方案,代表了最佳的实践。本课程的主打内容包括JS常见设计模式以及具体应用场景,打造一站式知识长龙服务,适合有JS基础的同学学习。
- 立即学习 543次学习
-
- GO语言核心编程课程
- 本课程采用真实案例,全面具体可落地,从理论到实践,一步一步将GO核心编程技术、编程思想、底层实现融会贯通,使学习者贴近时代脉搏,做IT互联网时代的弄潮儿。
- 立即学习 516次学习
-
- 简单聊聊mysql8与网络通信
- 如有问题加微信:Le-studyg;在课程中,我们将首先介绍MySQL8的新特性,包括性能优化、安全增强、新数据类型等,帮助学生快速熟悉MySQL8的最新功能。接着,我们将深入解析MySQL的网络通信机制,包括协议、连接管理、数据传输等,让
- 立即学习 500次学习
-
- JavaScript正则表达式基础与实战
- 在任何一门编程语言中,正则表达式,都是一项重要的知识,它提供了高效的字符串匹配与捕获机制,可以极大的简化程序设计。
- 立即学习 487次学习
-
- 从零制作响应式网站—Grid布局
- 本系列教程将展示从零制作一个假想的网络科技公司官网,分为导航,轮播,关于我们,成功案例,服务流程,团队介绍,数据部分,公司动态,底部信息等内容区块。网站整体采用CSSGrid布局,支持响应式,有流畅过渡和展现动画。
- 立即学习 485次学习