无法从 'test/banner.test.js' 中找到模块 'components/layouts/default/Banner'
Cannot find module 'components/layouts/default/Banner' from 'test/banner.test.js'
我正在尝试让 Jest 与我的 Nuxt 项目一起工作,我已经设置它以便它可以正常运行测试,但是当我的组件位于子文件夹(或更深的文件夹)中时,我收到以下错误。
Cannot find module 'components/layouts/default/Banner' from 'test/banner.test.js'
我怀疑这与我配置 Jest 的方式有关,但因为我对 Jets 还很陌生,所以我不知道那是什么。这是我的 jest.config 文件
module.exports = {
setupFiles: ['<rootDir'>/jest.setup.js'],
moduleNameMapper: {
'^@/(.*)$': '<rootDir>/',
'^~/(.*)$': '<rootDir>/',
'^vue$': 'vue/dist/vue.common.js'
},
moduleFileExtensions: ['js', 'vue', 'json'],
testPathIgnorePatterns: ['/dist/', '/node_modules/'],
transform: {
'^.+\.js$': '<rootDir>/node_modules/babel-jest',
'^.+\.(vue)$': '<rootDir>/node_modules/vue-jest'
}
transformIgnorePatterns: ['<rootDir>/node_modules/(?!vuetify)'],
collectCoverage: true,
collectCoverageFrom: [
'<rootDir>/api/**/*.js',
'<rootDir>/components/**/*.vue',
'<rootDir>/pages/**/*.vue',
'<rootDir>/store/**/*.js'
],
verbose:true
}
这是我在名为 banner.test.js
的测试文件夹中的玩笑测试
import {shallowMount} from '@vue/test-utils';
import Banner from 'components/layouts/default/Banner';
let wrapper = null;
beforeEach(()=>{
wrapper = shallowMount(Banner, {
propsData:{
text: 'test text'
}
})
})
it('test text', ()=> {
expect(wrapper.find('.bannerText').toBe('test text')
})
试试这个
import Banner from '@/components/layouts/default/Banner';
我正在尝试让 Jest 与我的 Nuxt 项目一起工作,我已经设置它以便它可以正常运行测试,但是当我的组件位于子文件夹(或更深的文件夹)中时,我收到以下错误。
Cannot find module 'components/layouts/default/Banner' from 'test/banner.test.js'
我怀疑这与我配置 Jest 的方式有关,但因为我对 Jets 还很陌生,所以我不知道那是什么。这是我的 jest.config 文件
module.exports = {
setupFiles: ['<rootDir'>/jest.setup.js'],
moduleNameMapper: {
'^@/(.*)$': '<rootDir>/',
'^~/(.*)$': '<rootDir>/',
'^vue$': 'vue/dist/vue.common.js'
},
moduleFileExtensions: ['js', 'vue', 'json'],
testPathIgnorePatterns: ['/dist/', '/node_modules/'],
transform: {
'^.+\.js$': '<rootDir>/node_modules/babel-jest',
'^.+\.(vue)$': '<rootDir>/node_modules/vue-jest'
}
transformIgnorePatterns: ['<rootDir>/node_modules/(?!vuetify)'],
collectCoverage: true,
collectCoverageFrom: [
'<rootDir>/api/**/*.js',
'<rootDir>/components/**/*.vue',
'<rootDir>/pages/**/*.vue',
'<rootDir>/store/**/*.js'
],
verbose:true
}
这是我在名为 banner.test.js
的测试文件夹中的玩笑测试import {shallowMount} from '@vue/test-utils';
import Banner from 'components/layouts/default/Banner';
let wrapper = null;
beforeEach(()=>{
wrapper = shallowMount(Banner, {
propsData:{
text: 'test text'
}
})
})
it('test text', ()=> {
expect(wrapper.find('.bannerText').toBe('test text')
})
试试这个
import Banner from '@/components/layouts/default/Banner';