node.js - npm 脚本按顺序与expressjs

标签 node.js express npm nightwatch.js

我需要按顺序运行三个脚本,中间是启动一个expressjs服务器。

这是我的脚本:

  1. npm run build

  2. npm start

  3. Node ./node_modules/nightwatch/bin/runner.js -c ./nightwatch.json

原因是 nightwatch 需要运行服务器来进行测试,但是当启动expressjs时,我陷入了日志/进程中,而没有继续执行下一个脚本。当我有 npm start & 时,它确实在后台运行它,但启动时间比 nightwatch 第三个脚本更长,因此 nightwatch 调用尚未启动的服务器并失败。

最佳答案

诀窍是使用forever打包以将服务器作为守护进程运行,并使用 sleep 命令等待服务器启动,然后再启动 nightwatchjs。

下面是 npm 脚本命令:

forever start app.js && sleep 5 && nightwatch --env chrome,default && forever stopall

最后不要忘记停止所有守护进程

致以诚挚的问候

关于node.js - npm 脚本按顺序与expressjs,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33467349/

相关文章:

node.js - 压缩 Node.js 响应

node.js - npm/咕噜声 : is it possible to install grunt without npm?

node.js - 如何使用 Mongoose 和 Express 为用户分配帖子

javascript - 如何使用 Ajax 和 Nodejs 从文件夹中获取图像?

javascript - jQuery.post() 发送电子邮件,但在没有服务器刷新的情况下无法到达 .done()/.fail()/.always()

node.js - 如何将 sqlite3 模块与 Electron 一起使用?

javascript - ENOLOCK npm 错误!运行 npm 审核修复时出错

node.js - 未找到 Vue 命令

node.js - 如何访问所有模板中的自定义对象表达应用程序?

node.js - 如何在不监听nodejs的情况下绑定(bind)TCP套接字?