Complife Product Management è un'applicazione full-stack per la gestione dei prodotti. Include un backend costruito con NestJS e un frontend costruito con Vue.js.
- Backend: NestJS, TypeScript, PostgreSQL, Docker
- Frontend: Vue.js, Vue Router, Axios
- Database: PostgreSQL
- Containerizzazione: Docker
Assicurati di avere installato i seguenti strumenti:
- Node.js e npm
- Docker e Docker Compose
- Git
git clone https://github.com/jappoman/complife-product-management.git
cd complife-product-management
Naviga nella directory del backend:
cd backend
npm install
docker-compose up -d
Naviga nella directory del frontend:
cd frontend
npm install
npm run serve
cd backend
npm run test
cd frontend
npm run build
Questo progetto utilizza Jest per eseguire i test. I test sono divisi in quattro file principali:
- AppController Test
- ProductService Test
- ProductController Test
- App Test
Il file src/app.controller.spec.ts
contiene i test per il controller principale dell'applicazione. Questi test verificano che il controller restituisca la stringa "Hello World!".
Il file src/product/product.service.spec.ts
contiene i test per il servizio ProductService. Questi test verificano che tutte le operazioni CRUD (Create, Read, Update, Delete) funzionino correttamente utilizzando dati mock.
Il file src/product/product.controller.spec.ts
contiene i test per il controller ProductController. Questi test verificano che il controller sia definito e che ritorni correttamente tutti i prodotti.
Il file test/app.e2e-spec.ts
contiene i test per verificare il flusso completo dell'applicazione.
Per eseguire i test unitari, utilizza il comando:
npm run test
Per eseguire i test e2e, utilizza il comando:
npm run test:e2e
Assicurati di trovarti nella directory backend quando esegui questi comandi.
Per testare le API in modo standalone, il progetto include un'export delle API dall'applicazione Bruno (simile a Postman). È possibile trovare i file di export nella directory api-collection/complife-product-management