2015-12-03 14 views
18

Sto usando il comando:comando moka dando ReferenceError: finestra non è definito

mocha --compilers :./test/babel-setup.js --recursive --watch 

Si sta dando errore:

ReferenceError: window is not defined 

Ho il seguente nei miei babel-setup.js:

require("babel/register")({ 
    compact: false 
}); 

Sto usando il nodo 0.12.7 e "mocha": "^ 2.2.5" e "jsdom": "^ 3.1.2".

Ho già jsdom installato con il progetto.

Che cosa sta causando l'errore?

+0

cosa c'è nel file "babel/register"? –

+0

sembra che sia lì per il supporto jsx – jit

risposta

2

Per testare le librerie di frontend con la moka è necessario il nodo Modul moka-jsdom qui a trovarlo: https://www.npmjs.com/package/mocha-jsdom

+0

ho esaminato quel pacchetto che non supporta il nodo 0.12.7 e richiede io.js – jit

+0

oh, mi dispiace per quello. Usiamo il nodo 4.0.0. Un aggiornamento non viene preso in considerazione per te? – Henry31

+0

in realtà è deprecato –

45

sono stato in grado di utilizzare jsdom-global per risolvere questo problema. Seguire le istruzioni in quel link per installare. In particolare, eseguire

npm install --save-dev --save-exact jsdom jsdom-global 

quindi aggiungere -r jsdom-global/register alla moka da riga di comando. Quando riesegui i test, l'errore window is not defined andrà via.

+3

dovrebbe essere contrassegnato come una risposta, funziona come un fascino, grazie :) –

Problemi correlati