제이의 블로그

Moquer Prisma Client pour les tests unitaires dans NestJS

Création: 2024-04-02

Création: 2024-04-02 03:01

En principe, les tests unitaires au niveau de l'application doivent être effectués dans un environnement isolé. Il est donc préférable d'éliminer les dépendances externes telles que les E/S réseau ou les bases de données qui pourraient affecter les résultats des tests.

Je suis en train d'écrire cet article pour enregistrer une méthode simple de mocking de Prisma Client pour les tests unitaires, car j'utilise Prisma ORM dans mon projet de jouet.


Installation du package jest-mock-extended

```bash npm install -D jest-mock-extended

Le package recommandé dans la documentation officielle de Prisma est installé via la commande ci-dessus.


Mocking de Prisma Client

```javascript describe('UserService', () => { let service: UserService; let prismaMock: DeepMockProxy;

beforeEach(async () => { prismaMock = mockDeep();

});


 Exemple de code de test unitaire

```javascript describe('create', () => { it('doit renvoyer les informations de l'utilisateur si la création de l'utilisateur réussit.', async () => { // Arrange const newUser = { email: 'test@test.com', password: 'test1234', };

});

Après le mocking, le typage est également pris en charge, ce qui rend la rédaction de tests unitaires très pratique.

Commentaires0