Vue Jest 别名配置

Posted

技术标签:

【中文标题】Vue Jest 别名配置【英文标题】:Vue Jest Aliases Configuration 【发布时间】:2020-08-16 06:12:16 【问题描述】:

由于moduleNameMapper 设置,我想运行 Jest 时出错。

我尝试了几种方法,但没有任何改变。

复制:

    克隆仓库:https://github.com/zoztorun/reproduce-webpack-alias-error npm install npm run test

【问题讨论】:

【参考方案1】:

由于您使用的是 Vue CLI,您应该使用 @vue/cli-plugin-unit-jest,可以使用以下命令将其添加到您的 Vue CLI 项目中:

vue add unit-jest

这还将添加一个包含示例测试的<rootDir>/test 目录,但这不符合您项目的测试文件模式,即*.spec.js 与源文件相邻。

使结果适应您的项目:

    删除<rootDir>/test(因为它将未被使用,并且因为它指向一个不存在的HelloWorld.vue) 将package.json 中的jest 配置编辑为:

  "jest": 
    "preset": "@vue/cli-plugin-unit-jest",
    "testMatch": [
      "**/src/**/*.spec.[jt]s?(x)"
    ]
  

    删除你的test NPM 脚本,因为@vue/cli-plugin-unit-jest 会自动添加它自己的test:unit 脚本,必须使用它来代替(即使用npm run test:unit)。

【讨论】:

以上是关于Vue Jest 别名配置的主要内容,如果未能解决你的问题,请参考以下文章

babel-plugin-module-resolver 不适用于 jest

vue项目中增加Jest测试功能

javascript nuxt.js项目中的Jest&vue-test-utils配置

vue配置config ‘./.../.../***/**.vue’路径别名

使用 Jest 测试时未定义全局节点配置变量

vue3.0配置别名