Jestjs 手动Jest Mock无法与create react应用程序一起使用
我正在使用Jestjs 手动Jest Mock无法与create react应用程序一起使用,jestjs,create-react-app,react-testing-library,Jestjs,Create React App,React Testing Library,我正在使用createreact应用程序最新版本,能够运行普通react组件的测试用例 现在来看更复杂的组件,它可以调用customHooks来渲染组件的几个部分。因此,考虑模仿这些定制挂钩,例如如下所示 ApprovalRequestCertCard组件,具有自定义挂钩useMe和useCertificate ApprovalRequestCertCard.test.tsx 这是mock的文件夹结构 但当我运行测试时,模拟函数不起作用,请参见下面的错误 跟随误差 jest.mock('
createreact应用程序
最新版本,能够运行普通react组件的测试用例
现在来看更复杂的组件,它可以调用customHooks来渲染组件的几个部分。因此,考虑模仿这些定制挂钩,例如如下所示
jest.mock('../hooks/useMe', () => ({
__esModule: true,
default: () => ({
data: {
role: 'MondraAdmin',
},
}),
}));
jest.mock('../hooks/useCertificate');
test('Render ApprovalRequestCertCard', () => {
render(
<ApprovalRequestCertCard
readOnly={true}
cert={cert}
companyId=""
onUpdate={update}
/>
);
expect(screen.getByText('Impacts under review')).toHaveClass(
'font-medium text-lg'
);
});
const useCertificate = jest.fn(() => ({
inProgress: false,
cancelApproval: jest.fn().mockName('cancelApproval'),
approve: jest.fn().mockName('approve'),
reject: jest.fn().mockName('reject'),
revoke: jest.fn().mockName('revoke'),
sendStartDate: jest.fn().mockName('sendStartDate'),
cancel: jest.fn().mockName('cancel'),
unrevoke: jest.fn().mockName('unrevoke'),
editCertification: jest.fn().mockName('editCertification'),
}));
export default useCertificate;