Tesztelés hozzáadása az Next.js alkalmazásokhoz: Útmutató a beépítéshez Unit Test

Ebben a részben végigvezetjük az Next.js alkalmazás minőségének javítási folyamatán egység- és integrációs tesztek hozzáadásával. Az alkalmazás megbízhatóságának és funkcionalitásának biztosítására tesztelő könyvtárakat fogunk használni, például Jest és. Testing Library

Unit Testing with Jest

Jest népszerű testing library egységtesztek végrehajtására alkalmazásokban JavaScript. A következőképpen adhat hozzá egységteszteket az alkalmazásához a Next.js következővel Jest:

Telepítés Jest és kapcsolódó könyvtárak:

npm install jest @babel/preset-env @babel/preset-react babel-jest react-test-renderer --save-dev

Hozzon létre egy Jest konfigurációs fájlt( jest.config.js):

module.exports = {  
  testEnvironment: 'jsdom',  
  transform: {  
    '^.+\\.jsx?$': 'babel-jest',  
  },  
};  

Írjon egységteszteket a következő használatával Jest:

import { sum } from './utils';  
  
test('adds 1 + 2 to equal 3',() => {  
  expect(sum(1, 2)).toBe(3);  
});  

Integrációs tesztelés Testing Library

Testing Library egy hatékony eszköztár a felhasználói interakciók tesztelésére az alkalmazásokban. A következőképpen adhat hozzá integrációs teszteket alkalmazásához a Next.js következővel Testing Library:

Telepítés Testing Library és kapcsolódó könyvtárak:

npm install @testing-library/react @testing-library/jest-dom --save-dev

Írjon integrációs teszteket a következő használatával Testing Library:

import { render, screen } from '@testing-library/react';  
import App from './App';  
  
test('renders learn react link',() => {  
  render(<App />);  
  const linkElement = screen.getByText(/learn react/i);  
  expect(linkElement).toBeInTheDocument();  
});  

Következtetés

Ez a rész bemutatta, hogyan javíthatja alkalmazása Next.js minőségét egység- és integrációs tesztek hozzáadásával olyan tesztelési könyvtárak használatával, mint például a Jest vagy Testing Library. Tesztek elvégzésével biztosíthatja alkalmazása megbízhatóságát és funkcionalitását, miközben hatékonyan észleli és kezeli a problémákat.