我有一个使用spyOn
中的jest
方法的单元测试。
import React from 'react';
import expect from 'jest-matchers';
import PointsAwardingPage from '../PointsAwardingPage';
import PointsAwardingForm from '../children/PointsAwardingForm';
import { shallow } from 'enzyme';
it("should call change method in form", () => {
// given
spyOn(PointsAwardingPage.prototype, 'change').and.callThrough();
const form = shallow(<PointsAwardingPage />).find('PointsAwardingForm');
// when
form.props().onChange();
// then
expect(PointsAwardingPage.prototype.change).toHaveBeenCalled();
});
一切正常。但是,我看到以下有关
eslint
函数调用的spyOn
错误消息。spyOn is not defined (no-undef)
。我可以使用哪个
import
语句来消除此错误? 最佳答案
尽管global
注释是一种有效的解决方案,但我相信您可以简单地使用jest.spyOn()
代替。
不要忘记在jest
中定义.eslintrc
:
"env": {
"jest": true
}