使用一个应用程序设置多个mocha测试的最佳做法是什么?

时间:2017-09-28 13:25:48

标签: javascript node.js unit-testing mocha

我正在尝试使用chai和mocha以及Appium来设置测试环境。在链中运行多个mocha测试的最佳实践是什么?如果我想为我的应用程序运行所有测试,我将如何进行此操作?我发现的所有教程仅显示如何添加一个或两个测试并单独使用它们。

澄清:我想一个接一个地运行测试,而不是一次完成。

2 个答案:

答案 0 :(得分:0)

我使用Windows并将所有特定于应用程序的代码保存在服务器文件夹中,下面是我用来同时运行所有测试文件的脚本

"test": "SET \"NODE_ENV=test\" && mocha server/**/*.test.js",
"testWatch": "nodemon --exec 'npm test'"

** / * .test.js 这将获取以.test.js结尾的所有测试文件(我喜欢使用的命名约定)。 虽然我没有使用柴和appium,但我想我回答了你的问题。

答案 1 :(得分:0)

我最近一直在努力解决这个问题(可能是因为我缺乏node.js的经验),但最终还是让它发挥了作用。

它甚至在BitBucket CI中设置,以便在我制作PR时自动执行测试。不幸的是,存储库是私有的,或者我会发送一个链接。

无论如何,在package.json中,我得到了这个:

{ 
  "name": "MyProject",
  ...
  "directories": {
    "test": "test"
  },
  "scripts": {
    "test": "mocha -u bdd test"
  }

当然有适当的依赖关系。 -u bdd只是设置用户界面/ api样式。

项目的test子文件夹包含一堆名为test-whatever.js的JavaScript文件,每个文件都有一个describe的测试套件。当我运行npm test时,此配置将刮取目录并在每个文件中运行测试。

但是,我无法找到我找到这个解决方案的地方。有一个similar question,但这个答案并不存在。另外Mocha's website表明test实际上是一个文件列表,因此当您指定文件名的一部分,目录名或带通配符的掩码时,Mocha可能只是很聪明地查找文件。 / p>