Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

277
Visualizações
Configuración de Jest ignorada desde la actualización a 27

Estoy tratando de migrar un monorepo NX de Angular 12 a Angular 13. Como parte de esta migración, Jest también se actualiza a la versión 27.2.3. el proyecto también utiliza una compilación de editor personalizado de CKEditor5.

Cuando CKEditor se integró por primera vez (creo que cuando el proyecto usaba Angular 9) tuvimos muchos problemas para que funcionara con Jest y cada vez que se ejecutaban las pruebas unitarias, cualquier componente que incluía CKEditor daba el mensaje de error:

SyntaxError: no se puede usar la declaración de importación fuera de un módulo

Logramos solucionar el problema agregando la siguiente configuración al archivo global jest.preset.js en la raíz del proyecto:

 transform: { 'node_modules[\\\\/]@ckeditor.+.(js)$': 'babel-jest', '^.+.(ts|html)$': 'ts-jest', }, transformIgnorePatterns: ['/node_modules/(?!@ckeditor|lodash).+.(js|jsx|ts|tsx|svg)$'],

Sin embargo, ahora que estamos migrando de Angular 12 a 13, el mensaje de error anterior ha regresado y parece que la configuración anterior ahora se ignora.

Como parte de la migración, NX ha creado automáticamente nuevos archivos project.json en todas las bibliotecas del monorepo. Este archivo contiene alguna configuración de Jest, por lo que intenté mover la configuración anterior del archivo jest.preset.js a los archivos individuales de project.json en cualquier biblioteca usando CKEditor, pero esto no solucionó el problema. Los nuevos archivos project.json también leen algunas configuraciones de Jest de un jest.config.js específico del proyecto, así que intenté agregar la configuración allí también, y eso tampoco solucionó el problema.

También intenté actualizar la configuración de testEnviroment en package.json de "node" a "jsdom" y esto tampoco ayudó. También intenté mover toda la configuración de transform/transformIgnorePatterns a la sección Jest de package.json y eso tampoco ayudó.

Supongo que mi configuración de trabajo anterior solo necesita moverse a un archivo diferente, simplemente no está claro a qué archivo debe moverse.

Mi entorno es el siguiente:

ventanas 10

Nodo 16.13.2

MNP 8.1.2

NX 13.4.5

broma 27.2.3

Angular 13.1.2

about 4 years ago · Juan Pablo Isaza
1 Respostas
Responde à pergunta

0

Esto se solucionó agregando la siguiente configuración al archivo preestablecido de Jest y eliminando la misma configuración de las configuraciones de aplicaciones/libs individuales:

 transform: { 'node_modules[\\\\/]@ckeditor.+\\.(js)$': 'babel-jest', '^.+\\.(ts|js|mjs|html|svg)$': 'jest-preset-angular', }, transformIgnorePatterns: ['node_modules/(?!.*.mjs$|@ckeditor)'],

El problema estaba relacionado con tener múltiples cadenas dentro de transformIgnorePatterns : solo admite un elemento a pesar de ser una matriz

about 4 years ago · Juan Pablo Isaza Relatório
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda