👉 https://jestjs.io/pt-BR/

👉 https://testing-library.com/

👉 https://mswjs.io/

React + Vite (Typescript) configurando Jest

npm install --save-dev jest @types/jest
npm install --save-dev @testing-library/react @testing-library/jest-dom @testing-library/user-event @testing-library/dom
npm install @babel/preset-env @babel/preset-react npm install @babel/preset-env @babel/preset-react
npm install jest-environment-jsdom jest-svg-transformer identity-obj-proxy
npm install --save-dev react-test-renderer
npm install ts-node ts-jest

▶️ Criar arquivo na raiz: jest.config.ts

import type { Config } from '@jest/types';

const config: Config.InitialOptions = {
  testEnvironment: "jsdom",
  transform: {
    "^.+\\\\.[tj]sx?$": ['ts-jest', {
      tsconfig: {
        esModuleInterop: true,
        jsx: 'react-jsx'
      }
    }]
  },
  moduleNameMapper: {
    '\\\\.(gif|ttf|eot|svg|png)$': '<rootDir>/.jest/mocks/fileMock.js',
    '\\\\.(css|less|sass|scss)$': 'identity-obj-proxy',
  },
  setupFilesAfterEnv: ['<rootDir>/setupTests.ts'],
};

export default config;

▶️ Criar arquivo setupTests.ts na raiz do projeto:

import "@testing-library/jest-dom";