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

时间:2020-05-06 13:36:15

标签: vue.js jestjs

我试图用Jest编写我的第一个测试,但是无法使我的配置与Vue组件一起运行。

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

npm install -—save-dev jest vue-jest jest-serializer-vue
npm install @vue/test-utils

在我的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”。

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

在控制台中,“我从'./../../resources/js/pages/MyVuePage.vue';中导入SeriesVersion的“ i”上有一个小箭头”

我通过在控制台中编写“ npm run test”来运行测试。

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

0 个答案:

没有答案
相关问题