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

迁移Jest测试到Vitest时,如何添加jest-extended匹配器?

解决Vitest迁移中jest-extended匹配器的问题
  • 替换无效兼容包,安装官方适配版本
    之前用的vitest-extended维护滞后,改用Vitest官方推出的@vitest/jest-extended:

    npm uninstall vitest-extended
    npm install -D @vitest/jest-extended
    
  • 全局配置(推荐)

    1. 新建测试初始化文件,比如tests/setup.ts,写入:
      import '@vitest/jest-extended'
      
    2. 在vite.config.ts的测试配置中指定该文件:
      import { defineConfig } from 'vite'
      
      export default defineConfig({
        test: {
          setupFiles: ['./tests/setup.ts'],
          globals: true, // 开启后无需在测试文件手动导入expect
          environment: 'jsdom', // 前端项目需配置,后端项目可改为'node'
        },
      })
      
  • 单文件按需引入(可选)
    若不想全局配置,可在单个测试文件里直接引入:

    import { expect } from 'vitest'
    import '@vitest/jest-extended'
    
    // 此时可正常使用toBeString等匹配器
    test('示例测试', () => {
      expect('hello').toBeString()
    })
    
  • 版本兼容检查
    确保vitest与@vitest/jest-extended版本一致(建议安装最新稳定版),避免版本不兼容引发异常。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.06 15:32:13