Ale*_*ide 2 javascript jestjs axios
我正在尝试模拟 axiosget
和post
in jest
。到目前为止,这是我的代码:
//...
jest.mock('axios');
axios.get.mockResolvedValue({ data: '' });
axios.post.mockResolvedValue(null);
test('should match snapshot', () => {
const { asFragment } = renderComponent();
expect(asFragment()).toMatchSnapshot();
});
//...
Run Code Online (Sandbox Code Playgroud)
据我所知,它与文档中的完全相同here
确切的例子:
// users.test.js
import axios from 'axios';
import Users from './users';
jest.mock('axios');
test('should fetch users', () => {
const users = [{name: 'Bob'}];
const resp = {data: users};
axios.get.mockResolvedValue(resp);
// or you could use the following depending on your use case:
// axios.get.mockImplementation(() => Promise.resolve(resp))
return Users.all().then(data => expect(data).toEqual(users));
});
Run Code Online (Sandbox Code Playgroud)
我越来越TypeError: _axios.axios.get.mockResolvedValue is not a function
我缺少什么?
好的,这似乎可以解决问题
beforeEach(() => {
jest.mock('axios');
axios.get = jest.fn().mockResolvedValue({ data: '' });
axios.post = jest.fn().mockResolvedValue('');
});
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
3065 次 |
最近记录: |