Vue.js 无法在Jest测试中导入Vue组件

Vue.js 无法在Jest测试中导入Vue组件,vue.js,jestjs,Vue.js,Jestjs,我试图开玩笑地编写我的第一个测试,无法使用Vue组件运行我的配置 在我的Laravel项目中,我使用以下命令安装了所需的npm包: npm install -—save-dev jest vue-jest jest-serializer-vue npm install @vue/test-utils 在my package.json中,我有以下配置: "scripts": { ... "test" : "jest" } ... "jest": { "testRege

我试图开玩笑地编写我的第一个测试,无法使用Vue组件运行我的配置

在我的Laravel项目中,我使用以下命令安装了所需的npm包:

npm install -—save-dev jest vue-jest jest-serializer-vue
npm install @vue/test-utils
在my package.json中,我有以下配置:

"scripts": {
    ...
    "test" : "jest"
}

...

"jest": {
    "testRegex": "tests/Javascript/.*.spec.js$"
},
我的测试在给定的目录“root/tests/Javascript/Mytest.spec.js”中

我的测试如下所示:

import { mount } from '@vue/test-utils';

// If this is removed it works....
import MyVuePage from './../../resources/js/pages/MyVuePage.vue';

describe('Something', () => {
    it("Awesome", () => {
        expect(1).toBe(1);
    });
});
我发现以下错误:

Jest遇到了意外的标记

这通常意味着您正试图导入Jest无法解析的文件,例如,它不是纯JavaScript

默认情况下,如果Jest看到一个Babel配置,它将使用它来转换您的文件,忽略“node_modules”

以下是您可以做的: •要转换某些“节点模块”文件,可以在配置中指定自定义“transformIgnorePatterns”。 •如果需要自定义转换,请在配置中指定“转换”选项。 •如果您只是想模拟您的非JS模块(例如二进制资产),您可以使用>的“moduleNameMapper”配置选项将其剔除

在控制台中,有一个小箭头指向我的“i”,即“import SeriesVersion from./../resources/js/pages/MyVuePage.vue”

我通过将“npm运行测试”写入控制台来运行测试


你能告诉我我做错了什么吗?

你有Babel配置吗?我的开发者中没有Babel,但我的软件包中有这个。json:“Babel”:{“presets”:[[“@Babel/preset env”,“useBuiltIns”:“usage”,“corejs”:3,“targets:{“chrome”:“58”,“ie”:“11”}]},你有巴贝尔配置吗?我的devdependences中没有巴贝尔,但我的包中有这个。json:“巴贝尔”:{“presets”:[[“@Babel/preset env“,{“useBuiltIns”:“用法”,“corejs”:3,“目标”:{“chrome”:“58”,“ie”:“11”}]},