EGC 2018/2019

Travis calidad de código

Prácticas

Para este objetivo vamos a usar varias herramientas

Codacy

Lo primero que vamos a hacer es analizar el código de nuestra app para detectar posibles mejoras:

No obstante, cuando vayamos a integrarlo con Travis, observaremos que obtenemos un error de "CODACY_PROJECT_TOKEN missing"

Primero, deberemos obtener la API key del proyecto:

]

Para solucionar este error debemos editar las opciones del build de nuestro repositorio

]

Trás realizar esto, ya podemos ver que el build termina correctamente y que envia los datos a codacy:

]

Flake8

Probemos ahora otros tipos de métricas con flake8 (http://flake8.pycqa.org/en/latest/)

dist: xenial

services:
  - postgresql
addons:
  postgresql: "9.4"
before_script:
  - psql -U postgres -c "create user decide password 'decide'"
  - psql -U postgres -c "create database test_decide owner decide"
  - psql -U postgres -c "ALTER USER decide CREATEDB"
language: python
python:
  - "3.6"
install:
  - pip install -r requirements.txt
  - pip install codacy-coverage
  - pip install flake8
script:
  - cd decide
  - coverage run --branch --source=. ./manage.py test --keepdb --with-xunit
  - coverage xml
  - python-codacy-coverage -r coverage.xml
  - flake8 .

No nos olvidemos de comitear para ver los resultados

]