量角器e2e,chaijs和doSomethingAsync()。should.eventually.equal(“foo”) - TypeError:无法读取属性'should'of undefined“

时间:2016-05-25 13:33:07

标签: protractor chai angularjs-e2e chai-as-promised gulp-protractor

能够像Chaijs在他们的文档中所说的那样做是有帮助的:return doSomethingAsync().should.eventually.equal("foo");

这将加快编写我的e2e测试,因为我不必明确解决这样的承诺:

// I wouldn't have to resolve this promise like this as it's very verbose and slows down
// my development 
return somePromise.then(function(resolvedPromise){
  expect(resolvedPromise).to.equal(expectedResult); 
});

使用柴会很好; chai.expect; chai.should(); chai-as-promise解决这些承诺,并迅速对它们断言;然而,到目前为止,我没有尝试过任何工作;对SO的搜索似乎表明Chai使用的不同承诺类型比Protractor更多,承诺类型的不兼容可能会导致

  

TypeError:无法读取未定义的属性'should'“

这是我导入这些库的方式:

var chaiAsPromised = require('chai-as-promised');
  chai.use(chaiAsPromised);
  var expect = chai.expect;
  var should = require('chai').should();
  var assert = chai.assert;

是否有人在不使用return doSomethingAsync().should.eventually.equal("foo");等其他图书馆的情况下成功使用'Q'?我再次不想依赖'Q'之类的其他库;如果可能的话,我只想在我的量角器e2e中使用纯chaijs;不是期望()而是.should.eventually.....

由于

0 个答案:

没有答案