【发布时间】:2014-10-03 22:09:44
【问题描述】:
我有一个可以运行的 Node.js Express REST API 应用程序。很好。
我有一个 Mocha/Chai/Supertest 模拟来测试上面的 API 应用程序。很好。
但我必须启动应用程序,然后独立运行模拟测试。
如何运行单个 grunt 命令来启动 API 应用程序,让它启动并运行,然后运行模拟测试?
或者我是否需要以某种测试模式(通过 env var)运行 API 应用程序并让仅测试逻辑以某种方式调用模拟测试?
我可以尝试一些事情并得到一些工作,但什么是好方法? (避免过度使用短语“最佳实践”。)
【问题讨论】:
-
grunt concurrent 可能对此有所帮助。我用它同时运行 nodemon 和 watch。
-
谢谢凯文,我会研究 grunt concurrent。我还在考虑在两个单独的 Docker 容器(基于相同的 Docker 映像)中运行 API 和模拟测试,并在 Docker 容器启动时执行参数化的模拟测试。然后我可以使用 Docker fig 运行这两个容器。听起来有点复杂,但它会是一个有用的模式以供将来使用。
标签: node.js gruntjs mocha.js chai supertest