You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

ASP.Net Core React运行npm test报错及测试资源管理器测试失败

问题解决方法

两个问题分别对应不同根因,按以下步骤操作即可修复:

1. 修复npm test提示Missing script: "test"错误

这个错误是执行命令时的工作目录不对导致的:

  • 你的React主项目、Node单元测试项目是互相独立的npm项目,各自持有独立的package.json,npm只会读取当前执行目录下package.json里的scripts配置。
  • 如果你要跑单元测试项目的jest测试:先在控制台执行cd 你的WebApp.UnitTest.njsproj所在的文件夹路径,切到单元测试项目根目录,先执行npm install安装jest等依赖,再执行npm test即可正常运行。
  • 如果你切到React主项目的ClientApp目录下执行npm test,跑的是react-scripts内置的测试命令,只会识别ClientApp/src目录下符合命名规则的测试文件,不会识别你单独放在单元测试项目里的测试代码。

2. 修复Visual Studio测试资源管理器中所有测试异常失败的问题

你手动指定TestAdapterPath调用vstest.console能正常跑通,说明测试代码、测试适配器本身没有问题,故障出在VS的配置或环境上,按以下顺序排查:

  • 先装全测试项目依赖:在单元测试项目根目录执行npm install,确保jest相关依赖已经完整安装到本地node_modules文件夹。VS不会自动为Node测试项目安装npm依赖,缺依赖时哪怕测试代码为空也会直接启动失败。
  • 检查测试适配器路径配置:打开VS菜单「工具-选项-Node.js工具-测试」,确认配置的Node.js TestAdapter路径和你手动执行vstest.console时用的路径完全一致。注意你贴的命令里路径写的是Comunity(少了一个m),VS2022社区版的默认正确路径应该包含Community文件夹,路径拼写错误会导致VS加载错/找不到测试适配器。
  • 检查测试项目工作目录:右键单元测试项目打开「属性」面板,确认测试运行的工作目录设置为单元测试项目本身的根目录,不要指向解决方案根目录或Web主项目目录,否则运行时找不到本地安装的jest会直接失败。
  • 清除缓存重试:关闭所有VS窗口,删除以下内容后重启VS:
    • 单元测试项目下的node_modules文件夹(删完重新执行npm install)
    • 解决方案根目录下的隐藏.vs文件夹
    • 本地缓存目录C:\Users\你的用户名\AppData\Local\Microsoft\VisualStudio\17.0_随机后缀\TestResults下的所有文件
      重启后重新生成解决方案,等测试资源管理器完成测试发现后再运行即可。

补充说明:不需要额外添加jest.config配置文件,Jest本身有默认的测试文件匹配规则,你手动跑vstest能正常运行已经验证了默认配置可用,只有需要自定义测试匹配规则、转译配置等场景时才需要新增该文件。

内容的提问来源于stack exchange,提问作者Kisar

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.29 15:45:34