0

単体テスト用に次の設定をしています。

const mocha = require('mocha')
var chai = require('chai')
var chaiAsPromised = require('chai-as-promised')
chai.use(chaiAsPromised)

var expect = chai.expect
chai.should()

describe('chain test', function() {
  it('should be a string', function() {
    return Promise.resolve('string').should.to.be.a('string');
  });
});

しかし、モカを実行すると、結果は次のようになります。

1) chain test should be a string:  
   AssertionError: expected {} to be a string

そのため、解決された結果に対してではなく、Promise オブジェクト自体に対してテストが行​​われているように見えます。

chai-as-promised: Installation and Setupによると、セットアップは正しいです。

テストはchai-as-promised: How to Use で説明されているのと同じ方法で作成されます。

expect(promise).promise.should構文の両方をテストしました。問題が何であるかを知っている人はいますか?

ノードとモジュールの使用バージョンは次のとおりです。

  • ノード v4.6.1
  • チャイ 3.5.0
  • チャイ・アズ・プロミス 6.0.0
  • モカ 3.2.0
4

1 に答える 1

0

間違いを見つけました。

問題は、正しい構文はそうではなく、そう.should.to.beでなければならないということです.should.eventually.be

于 2016-11-27T12:57:24.030 に答える