Tests vom Durchlaufen von asynchronem JavaScript (Mocha)

Ich versuche, asynchrones JavaScript mit Mocha zu testen, und es treten einige Probleme beim Durchlaufen eines asynchron gefüllten Arrays auf.

Mein Ziel ist es, N =arr.length) Tests, einer für jedes Element des Arrays.

Wahrscheinlich fehlt mir etwas an der Mokkasemantik.

Dies ist mein (nicht funktionierender) vereinfachter Code:

var arr = []

describe("Array test", function(){

    before(function(done){
        setTimeout(function(){
            for(var i = 0; i < 5; i++){
                arr.push(Math.floor(Math.random() * 10))
            }

            done();
        }, 1000);
    });

    it('Testing elements', function(){
        async.each(arr, function(el, cb){
            it("testing" + el, function(done){
                expect(el).to.be.a('number');
                done()
            })
            cb()
        })
    })
});

Die Ausgabe, die ich erhalte, ist:

  Array test
    ✓ Testing elements


  1 passing (1s)

Ich hätte gerne eine Ausgabe wie diese:

  Array test
      Testing elements
      ✓ testing3
      ✓ testing5
      ✓ testing7
      ✓ testing3
      ✓ testing1

  5 passing (1s)

Hilfe, wie man das schreibt?

Antworten auf die Frage(2)

Ihre Antwort auf die Frage