Saltar al contenido principal

Configuración

[Traducción Beta No Oficial]

Esta página fue traducida por PageTurner AI (beta). No está respaldada oficialmente por el proyecto. ¿Encontraste un error? Reportar problema →

Marko Testing Library no depende de ningún ejecutor de pruebas específico. Sin embargo, sí depende del entorno de pruebas. Este paquete funciona para probar plantillas Marko tanto del lado del servidor como del cliente, y ofrece una implementación ligeramente diferente optimizada para cada caso. Esto se logra mediante un browser shim, al igual que en Marko.

Muchas herramientas reconocen el browser shim, incluyendo todos los empaquetadores y algunos ejecutores de pruebas.

A continuación se muestran configuraciones de ejemplo para probar componentes tanto del servidor como del navegador con algunos ejecutores de pruebas populares.

Jest

Para que Jest entienda las plantillas Marko, primero debes instalar el preset @marko/jest. Esto permite importar tus plantillas Marko directamente en las pruebas.

Jest incluye una opción browser que le indica que resuelva la versión del browser shim para todos los módulos, como se mencionó anteriormente.

Para probar componentes renderizados en el cliente, asegúrate de habilitar tanto la opción browser como el preset, ¡y estarás listo!

jest.config.js
module.exports = {
preset: '@marko/jest/preset/browser',
}

Para probar componentes renderizados en el servidor, podemos usar @marko/jest/preset/node como nuestro preset de Jest.

jest.config.js
module.exports = {
preset: '@marko/jest/preset/node',
}

La configuración de Jest también admite múltiples projects, que podemos usar para crear una configuración combinada para pruebas del servidor y del cliente, como se muestra a continuación:

jest.config.js
module.exports = {
projects: [
{
displayName: 'server',
preset: '@marko/jest/preset/node',
testRegex: '/__tests__/[^.]+\\.server\\.js$',
},
{
displayName: 'browser',
preset: '@marko/jest/preset/browser',
testRegex: '/__tests__/[^.]+\\.browser\\.js$',
},
],
}

Mocha

Mocha también funciona excelente para probar componentes Marko. Sin embargo, Mocha no reconoce los browser shims, lo que significa que, sin configuración adicional, solo puede trabajar con componentes Marko del lado del servidor.

Para ejecutar pruebas Marko del lado del servidor con mocha, simplemente puedes usar el siguiente comando:

mocha --require marko/node-require

Esto habilita el Marko require hook y te permite requerir plantillas Marko del servidor directamente en tus pruebas.

Para pruebas del lado del cliente con Mocha, normalmente usarás un empaquetador para construir tus pruebas (esto resolverá correctamente los browser shims mencionados) y luego podrás cargar estas pruebas en algún contexto de navegador.