使用节点文件系统 fs.writeFileSync() 将 JSON 数据写入文件

Writing JSON data to a file using Node FileSystem fs.writeFileSync()

我是 Javascript 新手,正在尝试使用节点 'fs' 模块以 JSON 格式编写一些测试数据。

文件写入应该在一些 Mocha 测试结束时完成:

after(() => {
        console.log(customer.urn);
        fs.writeFileSync('testData.json', JSON.stringify(customer.urn));
});

testData.json 与测试脚本位于同一个目录中,作为一个已经存在的空白 .json 文件。

console.log(... 打印客户骨灰盒,但没有任何内容写入数据文件 - 我相信这是非常简单的事情。

您没有在函数后参数列表中使用 done 回调。 因此 mocha 认为您的测试是同步的,它无法知道您的 IO 是否完成。 一旦您的函数 returns mocha 结束节点进程并且 IO 未发送到 OS.

请试试这个,它应该有效

after((done) => {
    console.log(customer.urn);
    fs.writeFileSync('testData.json', JSON.stringify(customer.urn));
    done();
});