2016-07-01 9 views
0

Ich habe diesen folgenden Code in einer Datei "example.js" genannt geschrieben:Warum läuft mein Mocha vor() überhaupt nicht?

console.log('HI HI HI HI'); 

describe('hooks', function() { 
    console.log('before before'); 
    before(function() { 
    console.log('ok'); 
    }); 
    console.log('after before'); 
}) 

Ausgabe des Codes, wenn i "Mokka example.js" laufen ist:

HI HI HI HI 
before before 
after before 
    0 passing (1ms) 

Warum didn‘ t das "ok" gedruckt werden? Ich dachte der before() Hook läuft vor dem ganzen Code im describe() Block?

Antwort

5

Es wird nicht gedruckt, weil before vor einem Test ausgeführt wird, und Sie haben keine.

Versuchen Sie, einen Test hinzufügen, dann sollte es

laufen
console.log('1'); 

describe('hooks', function() { 
    console.log('2'); 
    before(function() { 
    console.log('4'); 
    }); 

    console.log('3'); 
    it('description', function() { 
    console.log('5'); 
    // nothing more here but still a test 
    }) 
}) 
+0

Ohhh ich es nicht lief vor einem Test nur wusste. Ich dachte, es lief vor jedem Code. Vielen Dank! – user3835653