Jogo de xadrez com interface web realizado como trabalho final da disciplina de Engenharia de Software II (2022/1).
Deploy já disponível no Heroku.
- Instale
Python 3.x
.
Execute os comandos a partir do diretório base.
-
Crie o ambiente virtual Python através do comando:
python -m venv venv
. -
Ative o ambiente virtual:
Windows:./venv/Scripts/activate
.
Linux/Mac:source ./venv/bin/activate
. -
Instale as dependências:
pip install -r requirements.txt
. -
Inicie o servidor:
python manage.py runserver
. O serviço é acessado por padrão através da url http://127.0.0.1:8000/.
Jogo de xadrez com interface web realizado como trabalho final da disciplina de Engenharia de Software II (2022/1).
Deploy já disponível no Heroku.
- Instale
Python 3.x
.
Execute os comandos a partir do diretório base.
-
Crie o ambiente virtual Python através do comando:
python -m venv venv
. -
Ative o ambiente virtual:
Windows:./venv/Scripts/activate
.
Linux/Mac:source ./venv/bin/activate
. -
Instale as dependências:
pip install -r requirements.txt
. -
Inicie o servidor:
python manage.py runserver
. O serviço é acessado por padrão através da url http://127.0.0.1:8000/.
Para rodar os testes ative o ambiente virtual
- Comando para rodar todos os testes:
python -m unittest discover -s tests
- Comando para rodar um teste em específico:
python -m unittest tests/nomeDoArquivoDeTeste.py
-
Instale o coverage.py no seu ambiente virtual:
pip install coverage
-
Comando para rodar o testes de cobertura:
coverage run -m unittest tests/test_ia.py tests/test_services.py tests/test_board.py
-
Use para obter um relatório da cobertura em seu terminal de comando:
coverage report -m
-
Para uma apresentação melhor desse relatório, use este comando para obter esse relatório em páginas HTML:
coverage html
Consulte a pasta htmlcov que foi gerada.
-
Estamos utilizando uma lógica Trunk-based development.
-
Commits e pushes não podem ser enviados diretamente para branch main. Cada desenvolvedor deve trabalhar em sua branch e abrir um pull request com suas adições. Cada pull request deverá ter aprovação de 1 revisor e passar pelas etapas de build, lint e testes com sucesso para que o merge com a main possa ser realizado.
-
Cada merge feito com a main, sobe automaticamente uma nova release do deploy no Heroku. Para garantir que o deploy não "quebre", existem as verificações antes do código ir para a branch main.
-
Ao instalar uma nova biblioteca, não se esqueça de adicioná-la aos requirements.
- Hint:
pip freeze > requirements.txt
- Hint:
-
Para atualizar localmente as branchs já deletadas no repositório utilize
git pull && git remote update origin --prune
.