Mocha 在所有类中的所有测试运行后运行

jro*_*004 5 mocha.js node.js

所以我正在使用 mocha 并且我有超过 10 个 JS 类的测试。我构建了一个日志变量,该变量在这 10 个类的整个测试运行过程中都有效。现在我想做的是在最后一次测试运行后,我想将此日志写入文件。

所以我做的第一件事就是在每堂课上写这样的东西

test.afterEach(function() {
    currentTest = this.currentTest;

    if(currentTest.state === 'failed') {
        common.takeScreenshot(driver, common.getTestName() + " - Failed.jpg");
    }

    common.writerLoggerToFile(this.currentTest.title+ ".json");

    driver.quit();
});
Run Code Online (Sandbox Code Playgroud)

这将为每个测试创建一个文件。我知道我可以做 test.after 将其减少到每个类一个文件。我在创建的最后一个文件中注意到包含所有测试的所有数据。所以我希望它是一个文件。

注意:这些文件以 json 格式存储数据,因此我不能如此轻松地简单地附加文件。如果摩卡有解决方案或者我需要构建一个解决方案,有什么想法吗?谢谢

thg*_*ell 0

考虑使用jsonjson-stream报告器。

mocha -R json >> your-file.json
Run Code Online (Sandbox Code Playgroud)