已安装jest-dom但@testing-library提示找不到@testing-library/dom模块
解决Cannot find module '@testing-library/dom'的问题
这个错误本质是@testing-library/react依赖的@testing-library/dom没有被正确安装到项目中——虽然@testing-library/react本身会关联这个依赖,但包管理器缓存、版本冲突或特殊安装参数都可能导致它缺失,你可以按以下步骤解决:
手动安装@testing-library/dom作为开发依赖:
npm install --save-dev @testing-library/dom # 用yarn的话: yarn add --dev @testing-library/dom # 用pnpm的话: pnpm add -D @testing-library/dom如果手动安装后仍报错,大概率是依赖缓存或版本不兼容问题:
- 删除项目根目录下的
node_modules文件夹 - 删除对应包管理器的锁文件:
package-lock.json(npm)、yarn.lock(yarn)或pnpm-lock.yaml(pnpm) - 重新执行安装命令:
npm install/yarn install/pnpm install
- 删除项目根目录下的
额外检查jest配置,确保
testEnvironment设置为jsdom(Next.js DOM测试必需),比如在jest.config.js中:module.exports = { testEnvironment: 'jsdom', // 其他配置项... };
关于文档是否存在疏漏:@testing-library/react确实将@testing-library/dom列为依赖项,正常安装流程下应该自动引入,这次问题更可能是你的包管理器安装时出现了异常,手动补装即可解决。
内容的提问来源于stack exchange,提问作者Jophy Ye
相关产品推荐
相关产品推荐

