我使用Create React应用程序,并且已经在src/setupTests.js:上声明了这一点
import '@testing-library/jest-dom';
import { configure } from 'enzyme';
import Adapter from 'enzyme-adapter-react-16';
configure({ adapter: new Adapter() });
但每次我在测试文件上使用expect(anything).toBeInTheDocument()
时,当运行测试时,我得到:
TypeError: expect(...).toBeInTheDocument is not a function
为了确保setupTests.js真正运行,我尝试在测试文件中使用酶浅层,它可以工作。那么,笑话界到底有什么问题?如何解决呢?
使用解决
import '@testing-library/jest-dom/extend-expect';
在src/setupTests.js 上
添加到jest.config.js
中更容易
module.exports = {
...,
"setupFilesAfterEnv": [
"<rootDir>/jest.setup.js"
]
}
并创建具有内容的CCD_ 3
import '@testing-library/jest-dom'
有了它,你不必在每个测试文件中导入笑话dom