Sinon chai 否定断言不适用于期望

Posted

技术标签:

【中文标题】Sinon chai 否定断言不适用于期望【英文标题】:Sinon chai negative assertions not working with expect 【发布时间】:2022-01-23 19:19:24 【问题描述】:

我正在尝试将 sinon-chai 与 expect 一起使用,但是当我尝试检查是否未调用函数时,我得到:

TypeError: expect(...).to.have.not.been.called is not a function

这是我尝试过的:

  expect(createCompany).not.to.have.been.called();
  expect(createCompany).to.not.have.been.called();
  expect(createCompany).to.have.not.been.called();
  expect(createCompany).to.have.been.not.called();
  expect(createCompany).to.have.been.notCalled();

但是它们都不起作用,但是没有“.not”我没有问题

我的文件开始于:

const chai = require('chai');
const sinon = require('sinon');
const sinonChai = require('sinon-chai');

chai.use(sinonChai);
const  expect  = chai;

【问题讨论】:

【参考方案1】:

好的,所以我发现这是因为括号。 因此,只需将 called() 替换为 called 即可。

【讨论】:

以上是关于Sinon chai 否定断言不适用于期望的主要内容,如果未能解决你的问题,请参考以下文章

Cypress系列(12)- Cypress 编写和组织测试用例篇 之 断言

Cypress系列(12)- Cypress 编写和组织测试用例篇 之 断言

如何更换Chai期望的Jext预期类型?

对超测响应的异步 chai 断言

前端技术之:JavaScript Test 断言库

如何使用页面对象在 Nightwatch.js 中运行多个 chai 断言?