gpt4 book ai didi

node.js - 如何使用 Node.js 完成/终止 Mocha/Istanbul 测试周期

转载 作者:搜寻专家 更新时间:2023-11-01 00:28:45 24 4
gpt4 key购买 nike

我一直在努力获得一个带有 Node.js 后端的 Azure 移动应用程序,该应用程序在本地运行且可测试。我终于让一切正常运行并开始编写测试。然后,我了解了用于测试代码覆盖率的 Istanbul/NYC。

一切似乎都运行良好,我能够为我的所有 *.js 生成代码覆盖率文件。文件,但只有在我手动按下 Ctrl+C 之后。

这是一组 mocha 的正常方式吗?测试结束?似乎会有/应该有某种方法可以结束一组测试并自动终止为测试 session 创建的 Node.js/express 服务器。

我是 Node.js/express/mocha/nyc 的新手。我的期望错了吗?有没有办法做我想做的事?

最佳答案

我不确定您要将服务器提升到哪里 (server.listen),但是在“全局”之后 停止您的服务器应该就足够了。

我通常做的是创建一个 bootstrap.test.js 并指定在那里测试之前和之后应该发生什么,然后像这样运行 mocha:

mocha/test/bootstrap.test.js/test/unit/**/*.test.js/test/integration/**/*.test.js.

您需要确保 after 不在 describe 中,以便它在所有测试完成后运行。

所以你的 bootstrap.test.js 应该看起来像这样:

/*
imports and stuff
*/

before(function () {
// LIFT YOUR SERVER //
});

after(function () {
server.close();
});

编辑:

至于 Ctrl-c 的编程等价物,即 process.exit(0)

关于node.js - 如何使用 Node.js 完成/终止 Mocha/Istanbul 测试周期,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46835840/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com