0

これが私が苦労している簡単な問題です。最初の例では、テストは実行されません。一方、2 番目のテストでは、2 つのテストが期待どおりに実行されます。

期待どおりに動作しません: //ここにデータtestDataが入力されますbefore

// test.js
const assert = require('assert');
const forEach = require('mocha-each');

describe('compare()', () => {

    testData = [];

    before(function (done) {
        testData = [[1, 1], [2, 2]];
        done();
    });

    forEach(testData)
        .it('compares %d and %d', (baseline, actual) => {
            assert(baseline == actual);
        });

});

期待どおりに動作します: //testDataここではハードコードされた配列として使用されます

// test.js
const assert = require('assert');
const forEach = require('mocha-each');

describe('compare()', () => {

    forEach([[1, 1], [2, 2]])
        .it('compares %d and %d', (baseline, actual) => {
            assert(baseline == actual);
        });

});

最初の例での変更された値がtestData取得されない理由がわかりません。it

4

1 に答える 1