Skip to content

API Restful feita em Django e django-rest como backend da aplicação da Caderneta de Campo Digital

Notifications You must be signed in to change notification settings

UnBArqDsw2021-2/2021.2_G4_CadernetaDeCampoDigital_Backend

Repository files navigation

Backend Caderneta de Campo Digital

Test status

Repositório Mobile

Wiki do Projeto

Rodando pela primeira vez

Para iniciar o backend pela primeira vez é necessário buildar o docker-compose e realizar os passos iniciais de migrate e createsuperuser do Django.

# Utilize o docker-compose para iniciar
$ docker-compose up --build

# Migre as models
$ make migrate

# Por fim, basta criar o superuser do django
$ make superuser

Criando novas models

Após a criação de uma nova model é necessário criar as migrações, o django fornece dois comandos para isso.

# Primeiro crie as migrações
$ make migrations

# Realize a migração
$ make migrate

Rodando os testes

Com o objetivo de criar uma aplicação estável e correta são necessários testes, para isso será usado o pytest como utilitário para execução da suite de testes.

  • Obs.: O comando ja executa com a flag -s do pytest, permitindo a utilização do ipdb como breakpoint para debug.
# Executando todos os testes da aplicação
$ make test

# Selecionando um teste dentro de um módulo ou
# rodando a suite de testes de um módulo
$ make test FILE=seu/arquivo/aqui.py

# Selecionando um teste exclusivo
$ make test TEST=nomeDoSeuTesteOuClasse

# Forma mais eficiente do exemplo anterior (selecionando o arquivo daquele teste)
$ make test FILE=seu/arquivo/aqui.py TEST=nomeDoSeuTesteOuClasse

Para a criação de testes facilitada, estão disponíveis utilitário como:

  • Freezegun: Congela o dia e a hora do código.
  • Parameterized: Permite a passagem de parâmetros na chamada de um teste, podendo o mesmo ser reutilizado para diversas entradas.
  • Model-bakery: Permite a criação de objetos padrões para os testes, tornado os códigos mais enxutos e mais compreensíveis.
  • Mock: Para mockar funções e fluxos dentro da aplicação

About

API Restful feita em Django e django-rest como backend da aplicação da Caderneta de Campo Digital

Topics

Resources

Stars

Watchers

Forks

Packages

No packages published

Contributors 4

  •  
  •  
  •  
  •  

Languages