所以我用umi开始了一个项目
yarn create @umijs/umi-app
但是我在尝试测试时遇到错误
Cannot find module '@/components/sensor-list' from 'src/pages/index/index.tsx'
Require stack:
src/pages/index/index.tsx
src/pages/index/index.test.tsx
4 | const { Title } = Typography;
5 |
> 6 | import SensorList from '@/components/sensor-list';
| ^
7 | import SensorModal from '@/components/sensor-modal';
8 |
9 | import styles from './index.less';
at Resolver.resolveModule (node_modules/jest-runtime/node_modules/jest-resolve/build/index.js:306:11)
at Object.<anonymous> (src/pages/index/index.tsx:6:1)
该应用程序运行正常,但不知何故 umi-test 无法处理导入。
测试是:
import React from "react";
import * as reactRedux from 'react-redux'
import { render, unmountComponentAtNode } from "react-dom";
import Index from './index';
let container = null;
beforeEach(() => {
// setup a DOM element as a render target
container = document.createElement("div");
document.body.appendChild(container);
});
afterEach(() => {
// cleanup on exiting
unmountComponentAtNode(container);
container.remove();
container = null;
});
it('loads data on init', () => {
const useSelectorMock = jest.spyOn(reactRedux, 'useSelector')
useSelectorMock.mockReturnValue(
[{ "id": 1, "created_at": "2021-10-24T21:11:11.430287Z", "updated_at": "2021-10-24T21:11:11.430331Z", "deleted_at": null, "name": "test1", "img_path": "default.png" }]
)
const useDispatchMock = jest.spyOn(reactRedux, 'useDispatch')
render(<Index />, container);
expect(container.textContent).toBe("Page index[{\"id\":1,\"created_at\":\"2021-10-24T21:11:11.430287Z\",\"updated_at\":\"2021-10-24T21:11:11.430331Z\",\"deleted_at\":null,\"name\":\"test1\",\"img_path\":\"default.png\"}]");
});
有谁知道是什么原因造成的或任何解决方法?