-
Notifications
You must be signed in to change notification settings - Fork 45
Coleta de métricas com CodeClimate para projetos RubyonRails, Python
Ferramenta de análise estática de código bastante utilizada pelos desenvolvedores rubyonrails. O CodeClimate analisa vários aspectos do projeto, e classifica o projeto segundo um índice. Dentre os recursos disponíveis destacam-se:
-
Análise de complexidade
-
Branches
-
Complexidade por método
-
Duplicação de código
-
Quantidade de modificações no arquivo
-
Quantidade de linhas de código
-
Checagem de segurança
-
Possui integração com o Travis
A cada commit, o CodeClimate oferece um feedback a respeito da situação atual, informando se o indice subiu ou desceu.
Passo a Passo de como adicionar o CodeCLimate ao projeto.
1 - Acessar o site https://codeclimate.com/
2 - Clicar na opção Get Started Free with GitHub
3 - Preencher a janela de login do github com sua conta
4 - Clicar na opção Add Open Source Repo
5 - Prencher formulário com o caminho/nome do projeto, Exemplo nicacioneto/colchonet
Após seguir todos os passos o CodeClimate já estará funcionando e analisando o projeto, após a análise, será disponibilizado um índice de qualidade do projeto.
O CodeClimate oferece suporte as linguagens
- CSS
- Go
- JavaScript
- PHP
- Python
- Ruby
Pode-se também trabalhar com o auxílio de engines adicionais com as seguintes linguagens/frameworks:
- Apex
- CoffeeScript
- Ember
- ESLint
- Haskell
- Haxe
- RubyMotion
- Rails
- SCSS
- Swift
- Vim Script
6- Visualização dos resultados
Para verificar o resultado das métricas coletadas, basta acessar o site do Code Climate, realizar o login com sua conta o Github e adicionar o repositório desejado. A lista de repositórios adicionados aparecerá para o usuário.
Clicando no repositório desejado, será mostrada um feed com as últimas atualizações relacionadas as métricas do repositório (por exemplo, caso a cobertura de testes aumentem, a atualização será mostrada nesta tela). Nesta mesma tela, é possível visualizar o score final da avaliação das métricas, indo de 0.0 a 4.0.
Avaliação de qualidade de acordo com a evolução do arquivo (feed):
Ao clicar na aba code
, é possível visualizar todos os arquivos e suas respectivas informações relacionadas à quantidade de linhas de código, número de vezes que o arquivo foi modificado até a data da última coleta de métricas e o número de issues do arquivo (estas issues significam que existem blocos de código duplicados em mais de um arquivo, por exemplo).
Avaliação de qualidade segundo as métricas de tamanho (LOC), duplicação (Duplication), Frequência de mudanças (Churn) e issues.
Ao clicar na aba issues
é possível visualizar quais arquivos tem métodos ou blocos de código duplicados.
Já na aba trend
é possível visualizar novamente o score final da avaliação das métricas e, mais importante, é possível visualizar o gráfico churn vs. quality, onde é mostrada a comparação entre a quantidade de vezes que o arquivo foi modificado e a qualidade de cada arquivo.
Para mais informações acesse a documentação oficial https://docs.codeclimate.com
EPS/MDS - FGA/UnB
Métodos de Desenvolvimento de Software
Gestão de Portfólio e Projetos de Software
RUP (Rational Unified Process)
Fase Elaboração (RUP) Planejamento(PMBOK)
Fase de Construção (RUP), Execução/Monitoramente e Controle (PMBOK)
Fase Transição (RUP), Finalização (PMBOK)
Acceptance Test Driven Development (ATDD)
Integração Contínua Deploy Contínuo
Automação de Ambiente com Docker
Orquestração de Containers com Docker Compose
Automação de Ambiente com Vagrant
Deploy Contínuo na Plataforma Heroku
Integração Contínua com Travis CI
Disponibilizando a Aplicação com o Proxy Reverso Nginx
Tutorial de Instalação do Ionic
Android Integração contínua com Circle CI
Configuração de Ambiente para React Native
Tutorial Instalação Ruby on Rails
Teste Automatizado Cucumber JS
Teste Automatizado Cucumber Rails
Testando AngularJS com Jasmine
Teste Automatizado com Selenium IDE
Configurar o SonarCloud para um projeto usando Jest
Configurar o SonarCloud para um projeto usando Pytest
Configurar o SonarCloud para um projeto usando Mocha e Istambul