Middle+
Como é que se pode prevenir erros com antecedência, para que os desenvolvedores não os cometam antes de enviar as alterações para produção e evitar a queda da aplicação?
sobes.tech IA
Resposta da IA
Integração do sistema de controlo de versões com ferramentas de análise estática de código, linters e formatadores. Configuração de verificações automáticas em commits locais (ganchos pre-commit). Implementação de um pipeline de integração contínua (CI) com execução automática de testes unitários, de integração e de contrato em cada push para o repositório. Uso de ferramentas para análise de segurança do código. Criação de padrões de codificação e revisão regular do código.
# Exemplo de configuração pre-commit para Python
repos:
- repo: https://github.com/pre-commit/pre-commit-hooks
rev: v4.4.0
hooks:
- id: trailing-whitespace
- id: end-of-file-fixer
- id: check-yaml
- id: check-added-large-files
- repo: https://github.com/psf/black
rev: 23.7.0
hooks:
- id: black
- repo: https://github.com/pycqa/flake8
rev: 6.1.0
hooks:
- id: flake8
# Exemplo de comando para executar testes localmente
pytest ./tests