🧪 Testing Guidelines

Guidelines

IA Guidelines / Guidelines / Testing Guidelines
⬇️ Download .md

Testing Guidelines

Padrões de testes do projeto


Cobertura

Tipo Mínimo
Geral 85%
Código crítico (auth, payments) 90%
Scripts/PoCs Básico ou nenhum

Tipos de Teste

Tipo Pasta Quando
Unitário tests/unit/ Lógica isolada
Integração tests/integration/ Componentes juntos
E2E tests/e2e/ Fluxos completos

Frameworks por Stack

Stack Framework Mocks
Java JUnit 5 + Mockito Mockito
Python Pytest pytest-mock, unittest.mock
Node Vitest vitest mocks
Vue Vitest + Vue Test Utils -
Angular Jasmine + Karma -

Nomenclatura

test_[método]_[cenário]_[resultado esperado]

# Exemplos:
test_getUserById_validId_returnsUser
test_getUserById_invalidId_throwsNotFound
test_createInvoice_validData_returnsCreated

Estrutura (AAA)

def test_exemplo():
    # Arrange - preparar dados
    user = create_user(name="Test")
    
    # Act - executar ação
    result = service.get_user(user.id)
    
    # Assert - verificar resultado
    assert result.name == "Test"

Mocks

  • Mockar dependências externas (APIs, DB)
  • Não mockar o que está sendo testado
  • Usar fixtures para dados reutilizáveis

CI

  • Testes rodam em todo PR
  • Bloquear merge se falhar
  • Relatório de cobertura automático