Testare automată în React + .NET Core: de la unit la integration
În orice aplicație serioasă – fie ea un blog, un magazin online sau un dashboard enterprise – testele automate nu mai sunt un „lux”, ci o necesitate. Ele oferă încredere în cod, ușurează refactorizările și accelerează livrarea de funcționalitate. În acest articol vei învăța cum să testezi aplicația ta React + .NET Core pe toate nivelurile: domeniu, aplicație, API și frontend.
✅ 1. Testarea logicii de domeniu (xUnit/NUnit)
Începem cu cea mai pură zonă a codului: modelul de domeniu (Domain Layer), unde se află regulile de business.
Exemplu: Agregatul Post
Test cu xUnit
✅ Bonus: Folosește FluentAssertions pentru assert-uri expresive.
✅ 2. Testarea serviciilor de aplicație
Application Layer conține logica de orchestrare. Aici lucrăm cu comenzi, query-uri și handleri (dacă folosești MediatR).
Exemplu: CreatePostCommandHandler
Test
✅ Tool-uri utile:
-
Moq pentru mocking
-
AutoFixture pentru generarea rapidă a datelor
✅ 3. Testarea controllerelor (integration tests)
Cu WebApplicationFactory putem scrie teste care pornesc aplicația ca într-un mediu real, dar cu DB in-memory (SQLite sau UseInMemoryDatabase()).
Setup
Test
✅ 4. Testarea componentelor React (Vitest + React Testing Library)
Pe frontend, folosim Vitest (vite-native) împreună cu @testing-library/react.
Exemplu: PostList
Test
✅ Bonus: Folosește msw (Mock Service Worker) pentru a intercepta request-uri API în teste.
Concluzie
Acum ai o imagine completă a testării într-o aplicație React + .NET:
-
🧠 Unit tests pentru modelul de domeniu
-
🧩 Teste de aplicație pentru handleri și servicii
-
🌐 Integration tests pentru API
-
🎯 UI tests pentru React
Recomandare: Include testele în CI/CD (GitHub Actions) pentru verificări automate la fiecare commit.