我正在使用一个应用程序,我想在其中安装 jest 和 cypress 进行测试。我的玩笑测试运行正常,一切都很好,然后我通过执行此命令安装了 cypress
yarn add cypress @cypress/react @cypress/webpack-dev-server
我在赛普拉斯进行了测试,每当我尝试使用它们时都运行正常
yarn cypress open-ct
但问题是,Chai 断言在测试中运行良好,但在我的 IDE 中显示错误
我的虚拟测试
it('Test test and onClick', () => {
let clicked = false
const onClick = () => (clicked = true)
mount(<Button text="Random text" onClick={onClick} />)
cy.get('button').should('have.text', 'Random text')
cy.get('button')
.click()
.then(() => {
expect(clicked).to.equal(clicked)
})
})
并显示错误:
我尝试遵循在互联网上看到的一些指南,但我错过了一些东西,因为我的 IDE(Webstorm 或 Visual Studio)只建议我 Jest 断言而不是 Chai 的,如果我使用 Jest 断言,我在运行 Cypress 时会收到此错误
将测试断言更改为:
expect(clicked).toEqual(clicked)
显示此错误:
我并不关心是否必须使用 Jest 或 Chai 断言,只要它有效即可。我更喜欢 Chai,因为它可以在 Cypress 中工作,但现在,我只希望它不会在我的 IDE 或 Cypress 中显示错误。
谢谢!
感谢@jonrsharpe 花时间与这个打字稿新手相处:)
我已经通过使用
yarn add --dev chai mocha ts-node @types/chai @types/mocha
安装 chai 和 mocha 依赖项并将其添加到我的 cypress 测试文件 import { expect } from 'chai'
来修复它