4
我正在写我的第一个React测试,并遇到我的beforeEach
语句无法正常工作的问题。这是我的测试文件:React&Enzyme:为什么不是beforeEach()工作?
import React from 'react';
import { shallow } from 'enzyme';
import Home from '../components/Home';
import IntroText from '../components/IntroText';
import Form from '../components/Form';
describe('<Home />',() => {
beforeEach(() => {
const wrapper = shallow(<Home />);
});
it('renders the IntroText component',() => {
expect(wrapper.find(IntroText).length).toBe(1);
});
it('renders the Form component',() => {
expect(wrapper.find(Form).length).toBe(1);
});
});
下面是相关的部分我package.json
:
"devDependencies": {
"babel-jest": "^18.0.0",
"babel-preset-es2015": "^6.22.0",
"babel-preset-react": "^6.23.0",
"jest": "^18.1.0",
"react-scripts": "0.9.0",
"react-test-renderer": "^15.4.2"
},
"dependencies": {
"enzyme": "^2.7.1",
"jest-enzyme": "^2.1.2",
"react": "^15.4.2",
"react-addons-test-utils": "^15.4.2",
"react-dom": "^15.4.2",
"react-router": "^3.0.2"
},
"scripts": {
"start": "react-scripts start",
"build": "react-scripts build",
"test": "react-scripts test --env=jsdom",
"eject": "react-scripts eject"
}
当测试运行我得到这个错误:
ReferenceError: wrapper is not defined
我缺少什么?
谢谢。你能解释为什么这样吗? – jslutzky
已更新,希望能使它更清晰一些。 – Canastro
非常感谢! – jslutzky