saveinmed/docs/TESTES.md
2026-01-01 15:20:48 -03:00

2.8 KiB

Matriz de Testes (com/sem banco e Playwright)

Este documento consolida todos os testes conhecidos no repositório e define uma matriz clara para rodar testes com banco, sem banco e E2E/Playwright.


1) Backend (Go) — backend/

1.1 Sem banco

  • Unitários e integrações sem DB (default):
    cd backend
    go test ./... -cover
    

1.2 Com banco

  • Alguns testes usam conexão real e podem ser ignorados quando SKIP_DB_TEST está setado.
  • Para rodar com banco, não defina SKIP_DB_TEST e configure DATABASE_URL:
    cd backend
    export DATABASE_URL=postgres://postgres:postgres@localhost:5432/saveinmed?sslmode=disable
    go test ./... -cover
    

1.3 Observações

  • Testes com banco estão em:
    • backend/internal/server/server_test.go
    • backend/internal/repository/postgres/postgres_test.go

2) Marketplace (React/Vite) — marketplace/

2.1 Unitários (Vitest)

cd marketplace
npm test

2.2 Coverage

cd marketplace
npm run test:coverage

2.3 Observações

  • Configuração do Vitest: marketplace/vitest.config.ts
  • Pastas de testes: marketplace/src/**/*.test.{ts,tsx}

3) Backoffice (NestJS) — backoffice/

3.1 Unitários

cd backoffice
pnpm test

3.2 E2E

cd backoffice
pnpm test:e2e

3.3 Coverage

cd backoffice
pnpm test:cov

4) SaveInMed Frontend (Next.js) — saveinmed-frontend/

4.1 Unitários (quando configurados)

cd saveinmed-frontend
npm test

4.2 E2E (quando configurados)

cd saveinmed-frontend
npm run test:e2e

4.3 Playwright (dependência presente)

  • Existe dependência de @playwright/test no package-lock.json, mas não há documentação/roteiro de testes.
  • Recomendação: criar playwright.config.ts e uma pasta tests/e2e.
  • Exemplo de comando esperado após configuração:
    cd saveinmed-frontend
    npx playwright test
    

5) Website (Fresh/Deno) — website/

5.1 Testes

cd website
deno test

5.2 Coverage

cd website
deno test --coverage=coverage

6) Runner unificado (script raiz)

O script start.sh possui função para executar testes do backend e marketplace:

./start.sh --test

7) Matriz resumida

Componente Sem DB Com DB Unitário E2E Playwright
Backend (Go)
Marketplace (React) N/A
Backoffice (NestJS) *
SaveInMed Frontend N/A * * *
Website (Fresh/Deno) N/A

* dependendo da configuração local e do banco necessário pelos testes.