2017-05-22 7 views
1

テストすべき機能の単体テストはどのように書くべきですか:50 < n < 100?ループテストよりも良い方法はありますか?その引数に基づいてテストケースを生成するために、テスト関数に引数を渡すことはできますか?例。モカ、チャイ・ループ・テスト

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

、それは3つの異なるテストなどの結果表示される必要があります。あなたはMochaを使用している場合

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

https://plnkr.co/edit/HBJP46lyTbBkH4Pclu2S

+0

そのように働く。 – tadman

答えて

2

を:チャイはdoesnの場合は希望的観測のように聞こえる

[ 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); 
    }) 
}); 
+0

ここには、mochaのドキュメントにあるこのセクションに関する直接リンクがあります。https://mochajs.org/#dynamically-generating-tests – Prusdrum

関連する問題