javascript - 如何在 mocha 测试的 for 循环中使用 "it"

标签 javascript unit-testing mocha.js

 describe('some test', function() {
  for(i = 0; i < someData.length; i++) {
   it("test scenario "+i, function() {
   assert.deepEqual(someValue, someData[i]);
   });
  }
 });

上面的代码不是打印多遍结果。它正在控制台中打印以下内容(绿色)。

0 passing (42ms)

最佳答案

所有详细信息都在这里:https://github.com/mochajs/mocha/issues/3074

Mocha 不支持这种行为。两个最著名的解决方法是:

  • 国际金融学院
  • forEach

我希望 forEach 稍微优雅一些​​,这是 Scott Santucci (github) 提出的可能的解决方案,并由我针对您的情况进行了修改:

someData.forEach(function(value, i) {
  it(`test scenario ${i}`, function() {
    assert.deepEqual(testValue, value);
  })
})

关于javascript - 如何在 mocha 测试的 for 循环中使用 "it",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58383214/

相关文章:

javascript - typeahead.js - 渲染事件 - 没有在一个参数中获得建议数组

javascript - 什么是异步加载 javascript 代码

java - Robolectric 和 SQLite.getVersion

javascript - 如何对依赖于外部库 "&lt;script src="http ://stripe[. ..] 的 API 进行单元测试

javascript - 安装 selenium-webdriver 以使用 NodeJS + Selenium + Mocha(在 Windows 上)的理想位置是什么

node.js - 在 Node.js 中生成进程的正确语法是什么?

javascript - ionic 切换值保持不变

javascript - Phonegap 解析外部 HTML

php - 我应该对每段代码进行单元测试吗

java - Mockito stub 方法以返回类的所有实例的值