【问题标题】:How do I run mocha test on array of data asynchronously?如何异步对数据数组运行 mocha 测试?
【发布时间】:2021-02-03 01:32:34
【问题描述】:

如何异步(并行)对一组数据运行相同的 mocha 测试?

这是我目前拥有的代码:

const testData = [{'array': 'of data here'}];
describe('run these test to data', () => {
  testData.forEach((data) => {
    describe('mocha test', () => {
      it('asserts data', () => doStuff())
    })
  })
})

我尝试使用async package each,但测试运行的时间与以前相同。

目标是减少测试运行的时间。

【问题讨论】:

  • Node.js 在单线程中运行,因此这无法在您期望的级别上完成。尝试 mocha v8+(和标志 --parallel)它支持并行运行测试,具有相同的目标,以减少运行所有测试所需的时间。虽然我仍然不确定数组测试。
  • 感谢@BorisKukec。我已经有了这个,但并行在不同的文件上。我的一个解决方案是分解数组并将其放在不同的文件中,因此如果数组中有 8 个项目,则其中 4 个项目将在不同的文件上运行。
  • 是的,我知道不同的文件。我的想法正是关于将长阵列分解成更小的部分。这似乎是最干净的解决方案。

标签: javascript node.js mocha.js


【解决方案1】:

如果你使用它,你的问题可以解决。

期待详细信息:https://www.chaijs.com/api/bdd/

describe('...',() =>{
        it('data tesing',(done) =>{
            expect(data).to.be.an('array')
        } )
    })

【讨论】:

  • 感谢您的回答,但我正在寻找一种解决方案来同时运行要测试的数据数组以减少测试运行的时间。
猜你喜欢
  • 2014-02-08
  • 2012-08-22
  • 2013-01-17
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2015-09-16
  • 1970-01-01
  • 2012-04-01
相关资源
最近更新 更多