如何从jest-extended添加匹配器

8cdiaqws  于 11个月前  发布在  Jest
关注(0)|答案(1)|浏览(129)

我正在把Jest测试移植到Vitest
这些测试使用来自jest-extended的匹配器,如expect(val).toBeString()。我试图将import "jest-extended"放入测试文件中,但结果是错误:Error: Invalid Chai property: toBeString
我也试着放进vite.config.ts

test: {
        environment: "happy-dom",
        globals: true,
        reporters: ["default", "html"],
        setupFiles: [
            "node_modules/jest-extended/dist/index.js",
        ]
    }

字符串
没有变化。甚至尝试使用vitest-extended包,但也没有变化。有什么建议吗?

i2byvkas

i2byvkas1#

正如文档所说,您需要创建安装文件。

// vitest.setup.js
import { expect } from 'vitest';
import * as matchers from 'jest-extended';

expect.extend(matchers);

字符串
然后你需要在vitest配置文件中指定它的路径

// vitest.config.js
export default defineConfig({
  test: {
    setupFiles: ['./vitest.setup.js'],
  },
});


关于扩展匹配器的更多信息可以在vitest documentation中找到。

相关问题