En mi configuración de vue tengo lo siguiente:
configureWebpack: { resolve: { alias: { react: path.resolve(__dirname, 'composition/react'), hooks: path.resolve(__dirname, 'composition'), }, }, },En mi componente tengo lo siguiente:
import { useEffect, useState } from 'react'; Esto es para que pueda volver a usar parte del código de Vue en los proyectos de React. Esto funciona cuando se ejecuta y construye el proyecto, pero no cuando se prueba. Cuando se prueba la unidad, aparece el error: Cannot find module 'react' from 'useCategories.js' , la importación anterior es de useCategories.
Lo siguiente está en jest.config.js:
module.exports = { preset: '@vue/cli-plugin-unit-jest', transform: { '^.+\\.vue$': 'vue-jest' } }Si la prueba unitaria en vue ignora los valores de vue.config.js, ¿cómo puedo configurar los valores de resolución de la ruta del paquete web para la prueba? Preferiría no repetir estos valores, pero si es un archivo JavaScript, supongo que puedo importarlo desde el mismo archivo en diferentes configuraciones.
Webpack no se usa en Jest, esto haría que la prueba del módulo no fuera práctica, por lo que la configuración de Webpack no puede afectar nada.
Como explica la documentación , también es necesario proporcionar un mapeo de módulos en la configuración de Jest, por ejemplo:
moduleNameMapper: { '^react$': '<rootDir>/composition/react', ...