SlideShare una empresa de Scribd logo
1 de 15
Descargar para leer sin conexión
Coloque seu débito técnico sob controle
O que é Sonar? 
• SonarQube é uma plataforma OpenSource para 
gerenciar a qualidade do código.
Os sete eixos de qualidade 
de código
Arquitetura do SonarQube
Quem usa isso? 
• 250K+ downloads 
• 25K+ instances no mundo 
• 1500+ assinantes de listas de discussão 
http://www.sonarsource.com/customers/customer-list/
O passo a passo 
• Baixe o SonarQube-Server: http://www.sonarqube.org/downloads/ 
• Descompacte 
• Em ambientes unix recomenda-se no diretório /etc 
• No windows será necessário dar acesso de admin ao diretório 
• Configure as seguintes propriedades no arquivo <path_to_sonar>/conf/sonar.properties 
• sonar.web.host: 127.0.0.1#(or localhost) 
• sonar.web.port: 9000 
• sonar.web.context: /sonar 
• username: sonar / password: sonar 
• Iniciando o servidor 
• Windows: <path_to_sonar>/bin/windows-x86-{32, 64}/StartSonar.bat 
• Mac OSX:: <path_to_sonar>/bin/macosx-universal-{32, 64}/sonar.sh 
• Linux:: <path_to_sonar>/bin/linux-{ppc-64, x86-32, x86-64)/sonar.sh
Agora vamos ao SonarRunner 
O SonarQube-Runner é recomendado como o launcher padrão para 
analisar um projeto com SonarQube. 
• Baixe o SonarQube-Runner: http://goo.gl/8dU2wm 
• Descompacte no mesmo diretório que se encontra o SonarQube-Server /etc 
• Configure as seguintes propriedades do arquivo <install_directory>/conf/sonar-runner.properties 
• #sonar.host.url=http://localhost:9000 
• #sonar.jdbc.username=sonar 
• #sonar.jdbc.password=sonar! 
• Crie uma nova variável de ambiente SONAR_RUNNER_HOME 
• Exemplo: SONAR_RUNNER_HOME=/etc/sonar-runner-2.4 
• Verifique a instalação básica, executando o comando no Unix sonar-runner -h e no Windows sonar-runner. 
bat H e em seguida será exibido uma lista de opções.
Configurações no Maven 
$ projeto/pom.xml
Configurações no Maven 
$ projeto/pom.xml
Gerando as métricas 
$ projeto/! 
! 
mvn sonar:sonar -Dsonar.host.url=http://localhost:9000/sonar!
Veja o resultado 
http://localhost:9000/sonar/! 
!
Entendendo a métrica de 
Complexidade e Qualidade 
Complexidade! 
! 
! •! 1-4 Perfeito!! 
! •! 5-7 Ok! 
! •! 8-10 Precisa de re-factoring! 
! •! 11+ Re-factor now! 
http://pt.slideshare.net/mailtoshinu/training-material-sonar-v1?next_slideshow=1
Próximos passos 
• Configurar o plugin cobertura (para testes unitários 
e integrados) 
• Instalar e configurar o SonarQube em uma VM 
dedicada 
• Adicionar job no Jenkins para executar o profile do 
sonar no maven do EP 
• O time acompanhar as métricas ;-)
Agora é só curtir
Denis Santos! 
Senior Developer and E-commerce Specialist 
! 
denissys@gmail.com 
@Denis_Santos 
linkedin.com/in/denissantosjava

Más contenido relacionado

La actualidad más candente

What Is Selenium? | Selenium Basics For Beginners | Introduction To Selenium ...
What Is Selenium? | Selenium Basics For Beginners | Introduction To Selenium ...What Is Selenium? | Selenium Basics For Beginners | Introduction To Selenium ...
What Is Selenium? | Selenium Basics For Beginners | Introduction To Selenium ...
Simplilearn
 

La actualidad más candente (20)

Usando containers com auto-escala de testes
Usando containers com auto-escala de testesUsando containers com auto-escala de testes
Usando containers com auto-escala de testes
 
Webdriver io presentation
Webdriver io presentationWebdriver io presentation
Webdriver io presentation
 
SonarQube - Como avaliar seus fornecedores e garantir a qualidade de suas ent...
SonarQube - Como avaliar seus fornecedores e garantir a qualidade de suas ent...SonarQube - Como avaliar seus fornecedores e garantir a qualidade de suas ent...
SonarQube - Como avaliar seus fornecedores e garantir a qualidade de suas ent...
 
SonarQube Overview
SonarQube OverviewSonarQube Overview
SonarQube Overview
 
Automação de Teste para REST, Web e Mobile
Automação de Teste para REST, Web e MobileAutomação de Teste para REST, Web e Mobile
Automação de Teste para REST, Web e Mobile
 
Validação e Testes de software
Validação e Testes de softwareValidação e Testes de software
Validação e Testes de software
 
Todas as abordagens de testes dentro do ágil
Todas as abordagens de testes dentro do ágilTodas as abordagens de testes dentro do ágil
Todas as abordagens de testes dentro do ágil
 
#1 Robot Floripa - Robot Framework: O que é? Onde vive? Do que se alimenta?
#1 Robot Floripa - Robot Framework: O que é? Onde vive? Do que se alimenta?#1 Robot Floripa - Robot Framework: O que é? Onde vive? Do que se alimenta?
#1 Robot Floripa - Robot Framework: O que é? Onde vive? Do que se alimenta?
 
Selenium WebDriver Tutorial For Beginners | What Is Selenium WebDriver | Sele...
Selenium WebDriver Tutorial For Beginners | What Is Selenium WebDriver | Sele...Selenium WebDriver Tutorial For Beginners | What Is Selenium WebDriver | Sele...
Selenium WebDriver Tutorial For Beginners | What Is Selenium WebDriver | Sele...
 
Testes em todos os niveis de planejamento
Testes em todos os niveis de planejamentoTestes em todos os niveis de planejamento
Testes em todos os niveis de planejamento
 
Running an app sec program with OWASP projects_ Defcon AppSec Village
Running an app sec program with OWASP projects_ Defcon AppSec VillageRunning an app sec program with OWASP projects_ Defcon AppSec Village
Running an app sec program with OWASP projects_ Defcon AppSec Village
 
Ferramentas para testes de software
Ferramentas para testes de softwareFerramentas para testes de software
Ferramentas para testes de software
 
Node.js e Express
Node.js e ExpressNode.js e Express
Node.js e Express
 
QAOps - Agile Trends 2021
QAOps - Agile Trends 2021QAOps - Agile Trends 2021
QAOps - Agile Trends 2021
 
Automação de Teste para iOS e Android com Appium
Automação de Teste para iOS e Android com AppiumAutomação de Teste para iOS e Android com Appium
Automação de Teste para iOS e Android com Appium
 
Como criar e executar testes paralelos web usando Selenium e containers
Como criar e executar testes paralelos web usando Selenium e containersComo criar e executar testes paralelos web usando Selenium e containers
Como criar e executar testes paralelos web usando Selenium e containers
 
Mini curso de testes ágeis
Mini curso de testes ágeisMini curso de testes ágeis
Mini curso de testes ágeis
 
Criando uma arquitetura para seus testes de API com RestAssured
Criando uma arquitetura para seus testes de API com RestAssuredCriando uma arquitetura para seus testes de API com RestAssured
Criando uma arquitetura para seus testes de API com RestAssured
 
What Is Selenium? | Selenium Basics For Beginners | Introduction To Selenium ...
What Is Selenium? | Selenium Basics For Beginners | Introduction To Selenium ...What Is Selenium? | Selenium Basics For Beginners | Introduction To Selenium ...
What Is Selenium? | Selenium Basics For Beginners | Introduction To Selenium ...
 
Sonar
SonarSonar
Sonar
 

Similar a Introdução, instalação e configuração do SonarQube

Similar a Introdução, instalação e configuração do SonarQube (20)

Análise de qualidade de código com Sonar - Fernando Boaglio
Análise de qualidade de código com Sonar - Fernando Boaglio Análise de qualidade de código com Sonar - Fernando Boaglio
Análise de qualidade de código com Sonar - Fernando Boaglio
 
Jenkins com SonarQube
Jenkins com SonarQubeJenkins com SonarQube
Jenkins com SonarQube
 
Jenkins com sonar qube
Jenkins com sonar qubeJenkins com sonar qube
Jenkins com sonar qube
 
Jenkins com sonar qube
Jenkins com sonar qubeJenkins com sonar qube
Jenkins com sonar qube
 
Jenkins com SonarQube
Jenkins com SonarQubeJenkins com SonarQube
Jenkins com SonarQube
 
Treinamento Rancher
Treinamento RancherTreinamento Rancher
Treinamento Rancher
 
Talk no Meetup LaravelSP #3
Talk no Meetup LaravelSP #3Talk no Meetup LaravelSP #3
Talk no Meetup LaravelSP #3
 
Tutorial servidor debian linux ocs invetory
Tutorial servidor debian linux ocs invetory Tutorial servidor debian linux ocs invetory
Tutorial servidor debian linux ocs invetory
 
Docker - Tutorial for beginners
Docker - Tutorial for beginnersDocker - Tutorial for beginners
Docker - Tutorial for beginners
 
Controlando Projetos com Netbeans e Subversion
Controlando Projetos com Netbeans e SubversionControlando Projetos com Netbeans e Subversion
Controlando Projetos com Netbeans e Subversion
 
Automação de Data Center
Automação de Data CenterAutomação de Data Center
Automação de Data Center
 
Docker Swarm - Sua aplicação pronta para escalar
Docker Swarm - Sua aplicação pronta para escalarDocker Swarm - Sua aplicação pronta para escalar
Docker Swarm - Sua aplicação pronta para escalar
 
Video Distribution in the Internet (pt_BR)
Video Distribution in the Internet (pt_BR)Video Distribution in the Internet (pt_BR)
Video Distribution in the Internet (pt_BR)
 
Orquestrando Docker Containers: Machine, Swarm e Compose
Orquestrando Docker Containers: Machine, Swarm e ComposeOrquestrando Docker Containers: Machine, Swarm e Compose
Orquestrando Docker Containers: Machine, Swarm e Compose
 
Spacewalk - Solisc
Spacewalk - Solisc Spacewalk - Solisc
Spacewalk - Solisc
 
Datacenter na nuvem
Datacenter na nuvemDatacenter na nuvem
Datacenter na nuvem
 
De 0 a DevOps
De 0 a DevOpsDe 0 a DevOps
De 0 a DevOps
 
Debug de cabo a rabo
Debug de cabo a raboDebug de cabo a rabo
Debug de cabo a rabo
 
TDC 2016 Floripa - Workshop docker
TDC 2016 Floripa - Workshop dockerTDC 2016 Floripa - Workshop docker
TDC 2016 Floripa - Workshop docker
 
Container revolucao
Container revolucaoContainer revolucao
Container revolucao
 

Más de Denis Santos

Más de Denis Santos (9)

Carrefour E-commerce - Multicloud Brasil Day 2017
Carrefour E-commerce - Multicloud Brasil Day 2017Carrefour E-commerce - Multicloud Brasil Day 2017
Carrefour E-commerce - Multicloud Brasil Day 2017
 
Performance test on Carrefour
Performance test on CarrefourPerformance test on Carrefour
Performance test on Carrefour
 
Code review automation and functional tests on Carrefour
Code review automation and functional tests on CarrefourCode review automation and functional tests on Carrefour
Code review automation and functional tests on Carrefour
 
Arquitetura Ágil 2.0
Arquitetura Ágil 2.0Arquitetura Ágil 2.0
Arquitetura Ágil 2.0
 
Boas práticas de desenvolvimento ágil com Continuous Integration + Delivery e...
Boas práticas de desenvolvimento ágil com Continuous Integration + Delivery e...Boas práticas de desenvolvimento ágil com Continuous Integration + Delivery e...
Boas práticas de desenvolvimento ágil com Continuous Integration + Delivery e...
 
Migração SVN para GIT
Migração SVN para GITMigração SVN para GIT
Migração SVN para GIT
 
Integração utilizando REST API e Microservices
Integração utilizando REST API e MicroservicesIntegração utilizando REST API e Microservices
Integração utilizando REST API e Microservices
 
Comunidade Ágil Netshoes - O que tem dado certo no time de Integração
Comunidade Ágil Netshoes - O que tem dado certo no time de IntegraçãoComunidade Ágil Netshoes - O que tem dado certo no time de Integração
Comunidade Ágil Netshoes - O que tem dado certo no time de Integração
 
Continuous Delivery / Entrega Contínua
Continuous Delivery / Entrega ContínuaContinuous Delivery / Entrega Contínua
Continuous Delivery / Entrega Contínua
 

Introdução, instalação e configuração do SonarQube

  • 1. Coloque seu débito técnico sob controle
  • 2. O que é Sonar? • SonarQube é uma plataforma OpenSource para gerenciar a qualidade do código.
  • 3. Os sete eixos de qualidade de código
  • 5. Quem usa isso? • 250K+ downloads • 25K+ instances no mundo • 1500+ assinantes de listas de discussão http://www.sonarsource.com/customers/customer-list/
  • 6. O passo a passo • Baixe o SonarQube-Server: http://www.sonarqube.org/downloads/ • Descompacte • Em ambientes unix recomenda-se no diretório /etc • No windows será necessário dar acesso de admin ao diretório • Configure as seguintes propriedades no arquivo <path_to_sonar>/conf/sonar.properties • sonar.web.host: 127.0.0.1#(or localhost) • sonar.web.port: 9000 • sonar.web.context: /sonar • username: sonar / password: sonar • Iniciando o servidor • Windows: <path_to_sonar>/bin/windows-x86-{32, 64}/StartSonar.bat • Mac OSX:: <path_to_sonar>/bin/macosx-universal-{32, 64}/sonar.sh • Linux:: <path_to_sonar>/bin/linux-{ppc-64, x86-32, x86-64)/sonar.sh
  • 7. Agora vamos ao SonarRunner O SonarQube-Runner é recomendado como o launcher padrão para analisar um projeto com SonarQube. • Baixe o SonarQube-Runner: http://goo.gl/8dU2wm • Descompacte no mesmo diretório que se encontra o SonarQube-Server /etc • Configure as seguintes propriedades do arquivo <install_directory>/conf/sonar-runner.properties • #sonar.host.url=http://localhost:9000 • #sonar.jdbc.username=sonar • #sonar.jdbc.password=sonar! • Crie uma nova variável de ambiente SONAR_RUNNER_HOME • Exemplo: SONAR_RUNNER_HOME=/etc/sonar-runner-2.4 • Verifique a instalação básica, executando o comando no Unix sonar-runner -h e no Windows sonar-runner. bat H e em seguida será exibido uma lista de opções.
  • 8. Configurações no Maven $ projeto/pom.xml
  • 9. Configurações no Maven $ projeto/pom.xml
  • 10. Gerando as métricas $ projeto/! ! mvn sonar:sonar -Dsonar.host.url=http://localhost:9000/sonar!
  • 11. Veja o resultado http://localhost:9000/sonar/! !
  • 12. Entendendo a métrica de Complexidade e Qualidade Complexidade! ! ! •! 1-4 Perfeito!! ! •! 5-7 Ok! ! •! 8-10 Precisa de re-factoring! ! •! 11+ Re-factor now! http://pt.slideshare.net/mailtoshinu/training-material-sonar-v1?next_slideshow=1
  • 13. Próximos passos • Configurar o plugin cobertura (para testes unitários e integrados) • Instalar e configurar o SonarQube em uma VM dedicada • Adicionar job no Jenkins para executar o profile do sonar no maven do EP • O time acompanhar as métricas ;-)
  • 14. Agora é só curtir
  • 15. Denis Santos! Senior Developer and E-commerce Specialist ! denissys@gmail.com @Denis_Santos linkedin.com/in/denissantosjava