登录
推荐 文章 Go 技术 课程 下载 专题 AI
首页 >  文章 >  软件教程

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,选择只显示当前文件的选项。此时测试树应从“工作区、文件夹、文件、测试”这样的完整层级,缩小到当前编辑器对应的测试文件。

VS Code 测试视图中选择当前文件筛选的原创操作示意图
图1:当前文件筛选操作示意图,图中界面为原创说明图,不是 VS Code 实际截图。

筛选只改变测试树的显示范围,真正执行时仍要点当前文件节点右侧的运行按钮,或使用扩展提供的当前文件命令。确认标题栏显示的是目标文件后再运行,能减少误点“运行全部测试”的机会。

步骤二:预览范围后提交当前文件运行

按 ⇧⌘P(Windows/Linux 使用 Ctrl+Shift+P)打开命令面板,搜索 Test: Run Tests in Current File 并执行。这个命令是否出现,取决于当前语言测试扩展;如果搜索不到,不要把 Test: Run All Tests 当成替代命令。

也可以在筛选后的 Testing 视图中,点击当前文件节点旁的运行按钮。两种方式的共同点是运行范围绑定到当前文件,而不是整个工作区。

步骤三:下载式查看输出并核对结果

运行结束后,查看测试树中文件节点的状态图标,再点击 Show Output 或打开 Test Results。重点核对三件事:目标文件下的测试数量是否变化、结果面板是否只列出本次文件的测试、其它文件是否没有被新一轮标记。

VS Code 测试结果面板显示当前文件测试通过的原创结果示意图
图2:当前测试文件结果示意图,图中只表达操作后的状态,不是实际运行证据。

如果只想缩小到一个测试方法,可以直接使用编辑器测试代码左侧的行号旁运行控件;它的范围比“当前文件”更小。运行失败时,优先打开测试输出查看测试扩展给出的错误,再判断是测试本身失败还是测试发现没有完成。

命令缺失或范围仍然过大怎么办

先在 Testing 视图点击刷新测试,或执行 Test Explorer: Reload tests。刷新后仍没有目标文件,通常是测试扩展没有识别当前文件、测试框架配置不完整,或当前文件并不是扩展约定的测试文件名。

如果命令存在但运行了其它文件,先关闭当前文件筛选并重新打开,再确认当前编辑器标签和测试树文件节点一致。不要修改全局测试设置来解决一次性的范围问题;只有当编辑器行号旁的运行控件也不出现时,才需要进一步检查语言扩展的测试设置。

常见疑问

为什么我看到了当前文件筛选,却仍然运行了全部测试?筛选是显示条件,不等同于执行命令。请点击当前文件节点的运行按钮,或使用测试扩展提供的 Test: Run Tests in Current File。

当前文件命令为什么搜不到?VS Code 的测试功能由语言或测试框架扩展补充。先确认扩展已安装并完成测试发现;没有该命令时,可以使用当前文件节点或编辑器行号旁的运行控件。

记住一个简单判断:看到的是“当前文件”,点的也必须是“当前文件节点的运行动作”,最后再用 Test Results 核对结果范围。

声明:本文转载于:17golang原创 如有侵犯,请联系study_golang@163.com删除
相关阅读
更多>
最新阅读
更多>
课程推荐
更多>