Javascript Chai as promised-expect with promise始终转换为空对象
按照承诺从柴的文件中删除 但是如果我尝试Javascript Chai as promised-expect with promise始终转换为空对象,javascript,unit-testing,mocha.js,chai,chai-as-promised,Javascript,Unit Testing,Mocha.js,Chai,Chai As Promised,按照承诺从柴的文件中删除 但是如果我尝试 import chai from 'chai'; import sinon from 'sinon'; import sinonChai from 'sinon-chai'; import dirtyChai from 'dirty-chai'; import chaiAsPromised from 'chai-as-promised'; chai.use(sinonChai); chai.use(dirtyChai); chai.use(chaiAs
import chai from 'chai';
import sinon from 'sinon';
import sinonChai from 'sinon-chai';
import dirtyChai from 'dirty-chai';
import chaiAsPromised from 'chai-as-promised';
chai.use(sinonChai);
chai.use(dirtyChai);
chai.use(chaiAsPromised);
//...
it.only('test', function() {
return expect(Promise.resolve({ foo: 'bar' })).to.eventually.have.property('foo');
});
我得到了这个断言错误:
AssertionError: expected {} to have a property 'foo'
我尝试了不同的用例和断言,但都是一样的,从expect(promise)
中得到的总是一个空对象
知道为什么吗
我用
"chai-as-promised": "6.0.0",
"chai": "^3.5.0",
"dirty-chai": "^1.2.2",
"mocha": "3.2.0",
"sinon": "^1.17.3",
"sinon-chai": "^2.8.0"
正如@LostJon提到的,您没有展示如何导入chai库。
e、 g.
let chai = require("chai");
let chaiAsPromised = require("chai-as-promised");
chai.use(chaiAsPromised);
let expect = chai.expect;
describe('chai as promise', () => {
it('some async test', () => {
return expect(Promise.resolve({foo:'bar'})).to.eventually.have.property("foo");
});
});
该示例适用于以下内容:"dependencies": {
"chai": "^3.5.0",
"chai-as-promised": "^6.0.0",
"mocha": "^3.2.0"
}
正如@LostJon提到的,您没有展示如何导入chai库。
e、 g.
let chai = require("chai");
let chaiAsPromised = require("chai-as-promised");
chai.use(chaiAsPromised);
let expect = chai.expect;
describe('chai as promise', () => {
it('some async test', () => {
return expect(Promise.resolve({foo:'bar'})).to.eventually.have.property("foo");
});
});
该示例适用于以下内容:"dependencies": {
"chai": "^3.5.0",
"chai-as-promised": "^6.0.0",
"mocha": "^3.2.0"
}
您可以添加如何导入柴库吗?应该有类似于
var chai=require(“chai”);var ChaiasPromisted=要求(“承诺的柴”);柴。使用(柴)代码>您可以添加导入柴库的方式吗?应该有类似于var chai=require(“chai”);var ChaiasPromisted=要求(“承诺的柴”);柴。使用(柴)代码>我更新了代码,但这有助于我了解发生了什么。如果我删除chai.use(dirtyChai)代码>,它可以工作。所以我想dirtyChai不能和Chaias一起玩。谢谢我把chai.use(chaias)放进去编码>前柴。使用(dirtyChai)代码>然后它工作了我更新了我的代码,但这帮助我了解了发生了什么。如果我删除chai.use(dirtyChai)代码>,它可以工作。所以我想dirtyChai不能和Chaias一起玩。谢谢我把chai.use(chaias)放进去编码>前柴。使用(dirtyChai)代码>然后它就工作了