51Testing软件测试论坛

标题: mocha怎么测试promise异步函数 [打印本页]

作者: harukamaki    时间: 2018-10-18 18:21
标题: mocha怎么测试promise异步函数
网上查的方法真的看不懂
莫不着头脑~
var expect = require('chai').expect;
var chaiAsPromised = require("chai-as-promised");

describe('test',function(){
  it('test',function(){
    getSelected().then(
      function(result){
        result.should.equal('未选择商品');
        done();
      },
    )
  });
})
mocha显示的通过 但实际上不管你再equal()里放什么都是通过的 还报了一些错误
typeerroe:cannot read property 'equal' of  undefined
我脑子里的概念是测试异步的返回值是不是一致。
下面是被测试函数
  function getSelected(){
    return new Promise((resolve,reject) => {
      let goodsList = []
      page.cartData.forEach(item => {//forEach()列出数组的每个元素
        if (item.selected === true) {
          let tmp = {
            goods_num: item.goods_num,
            goods_id: item.goods_id,
            item_id: item.item_id,
            goods_name: item.goods_name,
            goods_price: item.goods_price,
            original_img: item.goods.original_img,
            spec_key_name: item.spec_key_name,
            cat_id:item.id
          }
          goodsList.push(tmp)
        }
      })
      if (goodsList.length === 0){
        resolve('未选择商品')
      }else{
        reject(goodsList)
      }
    })
  };
作者: libingyu135    时间: 2018-10-22 09:25
不了解,帮顶
作者: 海海豚    时间: 2018-10-22 10:06
https://segmentfault.com/q/1010000004685526/a-1020000004685658   可以参考下这个
作者: qqq911    时间: 2018-10-22 10:46
加些日志看下原因
作者: jingzizx    时间: 2018-10-22 11:19

作者: 梦想家    时间: 2018-10-22 11:55





欢迎光临 51Testing软件测试论坛 (http://bbs.51testing.com/) Powered by Discuz! X3.2