Javascript测试引用相同的对象数组,即使我在每次测试之前清空它

Javascript测试引用相同的对象数组,即使我在每次测试之前清空它,javascript,object,testing,mocha.js,Javascript,Object,Testing,Mocha.js,因此,我有一个异步函数,它获取一个对象数组,我想对其进行测试。但问题是,每个测试都引用同一个数组,即使我在每个测试之前单独获取它 describe('Package parser mock status file tests', async () => { let packages: Package[] = []; beforeEach(async function () { packages = await PackageParser.fromStatu

因此,我有一个异步函数,它获取一个对象数组,我想对其进行测试。但问题是,每个测试都引用同一个数组,即使我在每个测试之前单独获取它

describe('Package parser mock status file tests', async () => {
    let packages: Package[] = [];

    beforeEach(async function () {
        packages = await PackageParser.fromStatusFile("tests/mockStatusFile.txt");
    });

    afterEach(async function () {
        packages.length = 0;
    });
这会导致数组被填充的次数与测试的次数相同,即使在每次测试之前我都会清空它。即使我在每个测试中将数组设置为不同的变量。我在某种程度上了解对象和数组引用以及异步,但我不明白这是怎么可能的


我正在使用摩卡。

问题与摩卡、异步或测试无关。My PackageParser对象包含跟踪已处理包的数组。此数组从未清空

我以前在使用异步、对象引用之类的东西时看到过一些奇怪的事情,所以我立即认为这是另外一回事