Diferencia entre revisiones de «Travis calidad de código»
De Wiki de EGC
| (No se muestran 5 ediciones intermedias del mismo usuario) | |||
| Línea 1: | Línea 1: | ||
Para este objetivo vamos a usar varias herramientas | Para este objetivo vamos a usar varias herramientas | ||
| + | |||
| + | |||
| + | == Codacy == | ||
*https://app.codacy.com | *https://app.codacy.com | ||
Lo primero que vamos a hacer es analizar el código de nuestra app para detectar posibles mejoras: | Lo primero que vamos a hacer es analizar el código de nuestra app para detectar posibles mejoras: | ||
| − | [[Archivo:codacy.png]] | + | [[Archivo:codacy.png|500px]] |
| Línea 11: | Línea 14: | ||
Primero, deberemos obtener la API key del proyecto: | Primero, deberemos obtener la API key del proyecto: | ||
| − | [[Archivo:codacy_api.png]] | + | [[Archivo:codacy_api.png|500px]]] |
Para solucionar este error debemos editar las opciones del build de nuestro repositorio | Para solucionar este error debemos editar las opciones del build de nuestro repositorio | ||
| − | [[Archivo:codacy_token.png]] | + | [[Archivo:codacy_token.png|500px]]] |
| + | |||
| + | Trás realizar esto, ya podemos ver que el build termina correctamente y que envia los datos a codacy: | ||
| + | |||
| + | [[Archivo:codacy_success.png|500px]]] | ||
| + | |||
| + | |||
| + | == Flake8 == | ||
| + | |||
| + | Probemos ahora otros tipos de métricas con flake8 (http://flake8.pycqa.org/en/latest/) | ||
| + | |||
| + | |||
| + | <syntaxhighlight lang="yaml"> | ||
| + | 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 . | ||
| + | </syntaxhighlight> | ||
| + | |||
| + | No nos olvidemos de comitear para ver los resultados | ||
| + | |||
| + | [[Archivo:flake8_success.png|500px]]] | ||
Revisión actual del 13:18 26 oct 2019
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




