Vitest报错:测试套件中未找到测试用例,如何解决?
解决Vitest报错:Error: No test found in suite
以下是几个常见的排查和修复方向:
检查测试文件命名与位置
Vitest默认只识别符合特定规则的测试文件:- 文件后缀为
.test.js/.test.jsx/.test.ts/.test.tsx或.spec.js/.spec.jsx/.spec.ts/.spec.tsx - 放在
__tests__目录下的文件
确认你的测试文件名符合要求,比如将LinkGroupModal.js改为LinkGroupModal.test.jsx(React组件推荐用jsx/tsx后缀)。
- 文件后缀为
修正Vitest配置文件
如果自定义了vitest.config.js或vite.config.js,检查test.include规则是否覆盖了你的测试文件路径。示例配置:// vitest.config.js import { defineConfig } from 'vitest/config'; import react from '@vitejs/plugin-react'; export default defineConfig({ plugins: [react()], test: { include: ['src/**/*.test.{js,jsx,ts,tsx}'], // 匹配src下所有符合后缀的测试文件 environment: 'jsdom', // React组件测试需jsdom环境 }, });给describe块添加名称(规范+潜在修复)
你的describe块未命名,虽然语法合法,但部分场景下可能影响测试识别。给describe加上组件相关名称:describe('LinkGroupModal 组件', () => { it('renders LinkGroupModal for new group', () => { // 原测试代码 }) })指定测试文件路径运行
直接指定测试文件路径执行测试,验证是否是全局匹配规则的问题:npx vitest src/components/LinkGroupModal.test.jsx如果此命令能正常运行测试,说明需要调整配置文件中的
include规则,确保覆盖你的测试文件位置。
内容的提问来源于stack exchange,提问作者Jasperan
相关产品推荐
相关产品推荐

