Skip to content

Instantly share code, notes, and snippets.

@dancheskus
Created November 6, 2023 18:51
Show Gist options
  • Save dancheskus/2f9c863ebc454971bb252aa9e05c661e to your computer and use it in GitHub Desktop.
Save dancheskus/2f9c863ebc454971bb252aa9e05c661e to your computer and use it in GitHub Desktop.
Добавление vitest с react testing library в typescript проект

Добавление vitest с react testing library в typescript проект

Настройка

  1. yarn add -D vitest happy-dom @testing-library/react @testing-library/jest-dom
  2. В package.json добавить:
"scripts": {
  "test": "vitest"
}
  1. Сверху файла vite.config.ts добавить /// <reference types="vitest" />
  2. В этом же файле в defineConfig добавить:
test: {
  globals: true,
  environment: 'happy-dom',
  setupFiles: ['src/setupTest.ts']
}
  1. Добавить в tsconfig.json:
compilerOptions: {
  "types": ["vitest/globals"]
}
  1. Создать файл src/setupTest.ts и поместить в него import '@testing-library/jest-dom'

Проверка

  1. Создать файл src/App.test.tsx с содержимым:
import { render, screen, fireEvent } from '@testing-library/react'
import App from './App'

describe('<App />', () => {
  it('is first test', () => {
    render(<App />)
    fireEvent.click(screen.getByRole('button'))
    expect(screen.getByText(/count is 1/i)).toBeInTheDocument()
  })
})
  1. yarn test
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment