2017-02-17 74 views
0

我想对从promise调用中获得的结果进行一堆测试。我知道这是可以做到的:对Promise结果运行多个测试 - 摩卡

it ('should pass test foo1',() => { 
    return promisecall() 
    .then(result => { 
     expect(result.length).to.equal(42) 
     expect(some other test on data) 
     expect(some other test on data) 
       . 
       . 
    }) 
}) 

根据我的理解,这是什么做的是: 运行一个单一的测试(即应该通过试验foo1),它通过只有当所有的期望条件为真,而这些期望部件不会显示在输出屏幕上。

如何在单个承诺结果的结果中添加多个“it”/ unit测试,以便不同的测试用例实际显示在输出中?

回答

3

您应该能够将它们组合在一起的describe()并运行在before()承诺:

describe('things with promises',() => { 
    var promiseResult; 

    before(() => promiseCall().then(result => promiseResult = result)); 

    it ('should pass test foo1',() => expect(promiseResult.length).to.equal(42)); 

    it ('should pass test foo2',() => expect(some other test)); 

    // ... 
});