Diferencia entre revisiones de «Travis calidad de código»

De Wiki de EGC
Saltar a: navegación, buscar
 
(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:

Codacy.png


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:

Codacy api.png]

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

Codacy token.png]

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

Codacy success.png]


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

Flake8 success.png]