51Testing软件测试论坛

 找回密码
 (注-册)加入51Testing

QQ登录

只需一步,快速开始

微信登录,快人一步

查看: 3075|回复: 5
打印 上一主题 下一主题

[求助] mocha怎么测试promise异步函数

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2018-10-18 18:21:46 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
网上查的方法真的看不懂
莫不着头脑~
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)
      }
    })
  };
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏
回复

使用道具 举报

  • TA的每日心情

    2020-2-2 12:43
  • 签到天数: 630 天

    连续签到: 1 天

    [LV.9]测试副司令

    2#
    发表于 2018-10-22 09:25:46 | 只看该作者
    不了解,帮顶
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    奋斗
    昨天 09:44
  • 签到天数: 1673 天

    连续签到: 3 天

    [LV.Master]测试大本营

    3#
    发表于 2018-10-22 10:06:11 | 只看该作者
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    奋斗
    昨天 10:14
  • 签到天数: 1392 天

    连续签到: 3 天

    [LV.10]测试总司令

    4#
    发表于 2018-10-22 10:46:55 | 只看该作者
    加些日志看下原因
    回复 支持 反对

    使用道具 举报

    本版积分规则

    关闭

    站长推荐上一条 /1 下一条

    小黑屋|手机版|Archiver|51Testing软件测试网 ( 沪ICP备05003035号 关于我们

    GMT+8, 2024-5-9 00:35 , Processed in 0.064942 second(s), 22 queries .

    Powered by Discuz! X3.2

    © 2001-2024 Comsenz Inc.

    快速回复 返回顶部 返回列表