SELab-2 / UGent-4

MIT License
6 stars 0 forks source link

UGent-4

Wiki

Deployment diagram

image

Frontend

Hoe runnen?

Benodigdheden:

De frontend lokaal runnen:

Ga naar de UGent-4/frontend/frontend folder. Run het commando: npm run dev. Normaal kan je nu naar de url http://localhost:5173/ surfen in je browser en de frontend zien. Als je een wit scherm ziet dan kan je proberen om de frontend te stoppen, npm audit fix te runnen in dezelfde folder, en de frontend opnieuw te runnen.

Linting:

De volgende commando's run je van de frontend/frontend directory: npm run lint: geeft een lijst van alle linting errors weer. npm run lint -- --fix: fixt een aantal linting errors automatisch indien mogelijk. npm run format: format alle files in het project volgens de instellingen in .prettierrc.

Er kan niet gepushed worden als er nog linting errors aanwezig zijn.

Testen:

Je kan visueel in de browser de testen volgen door het commando npm run cypress-open te runnen. Je zal dan ook de keuze krijgen om te kiezen tussen E2E testen of om component testen te volgen.

npm run cypress-e2e en cypress-component zullen de e2e testen en de component testen runnen en in de terminal tonen of ze slagen.

Backend

Hoe runnen?

Benodigdheden:

de api lokaal runnen:

Om de api lokaal te runnen activeer je eerst de virtual environment. Daarna voer je volgende commando's uit in de UGent-4 directory:

./manage.py makemigrations api
./manage.py migrate api
./manage.py runserver

Je kan dan surfen naar http://127.0.0.1:8000/ om de api te zien.

Hoe testen?

OPMERKING: Al de volgende commando's moeten uitgevoerd worden terwijl de virtual environment geactiveerd is.

Je checkt zowel de linting als de tests.

Linting:

De volgende commando's run je van de api directory: Run het commando flake8 .. De output vertelt je waar de codestijl fout is. Om snel deze stijlfouten op te lossen kan je black .runnen.

Testing:

Backend testing:

Run het commando ./manage.py test in de UGENT-4 directory. Om de coverage te raadplegen kan het commando coverage run manage.py test -v 2 && coverage report && coverage html gebruikt worden. Dit runt alle testen en toont per bestand de coverage. Ook wordt er voor elk bestand een html gemaakt waar je per lijn kan zien of die door de testen gecovered wordt.

Frontend testing:

Door het commando npm run cypress-component uit te voeren, worden de component testen gerund. Voor de end-to-end testen verloopt het een beetje anders: