javascript - Mocha, Chai - 循环测试

标签 javascript unit-testing mocha.js chai

我应该如何为应该测试的函数编写单元测试:50 < n < 100 ?有没有比循环测试更好的方法?我可以将参数传递给测试函数以根据该参数生成测试用例吗?例如。

it('should return $n+1', function(n){
  expect(add(n)).to.be.eql(n+1);
},[ 1, 2, 3])

它应该将结果显示为 3 个不同的测试:

should return 1+1
should return 2+1
should return 3+1

https://plnkr.co/edit/HBJP46lyTbBkH4Pclu2S

最佳答案

如果您使用 Mocha :

[ 1, 2, 3 ].forEach(value => {
  it(`should return ${ value }+1`, () => {
    expect(add(value)).to.be.eql(value + 1);
  })
});

// The same, but for older versions of Node.js/browser:
[ 1, 2, 3 ].forEach(function(value) {
  it('should return ' + value + '+1', function() {
    expect(add(value)).to.be.eql(value + 1);
  })
});

关于javascript - Mocha, Chai - 循环测试,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44106401/

相关文章:

javascript - 在 Mocha 浏览器中使用多个记者?

node.js - 如何使用 webpack url-loader 运行 mocha 测试?

javascript - 从单击的链接返回值时出现问题

unit-testing - Odoo 单元测试未运行

javascript - ES6 仅在属性已经存在时才将属性复制到目标

unit-testing - 做TDD的时候,为什么要通过 "just enough"才能通过测试?

.net - MSTest:以64位模式运行单元测试

javascript - 如何处理嵌套同步 promise

javascript - Jasmine.js : Expected function to throw an Error, 但它抛出了函数

javascript - polymer 属性不通过数据绑定(bind)更新