Your SlideShare is downloading. ×
0
Testes de desempenho do WordPress através do uso de ferramentas de software livre
Testes de desempenho do WordPress através do uso de ferramentas de software livre
Testes de desempenho do WordPress através do uso de ferramentas de software livre
Testes de desempenho do WordPress através do uso de ferramentas de software livre
Testes de desempenho do WordPress através do uso de ferramentas de software livre
Testes de desempenho do WordPress através do uso de ferramentas de software livre
Testes de desempenho do WordPress através do uso de ferramentas de software livre
Testes de desempenho do WordPress através do uso de ferramentas de software livre
Testes de desempenho do WordPress através do uso de ferramentas de software livre
Testes de desempenho do WordPress através do uso de ferramentas de software livre
Testes de desempenho do WordPress através do uso de ferramentas de software livre
Testes de desempenho do WordPress através do uso de ferramentas de software livre
Testes de desempenho do WordPress através do uso de ferramentas de software livre
Testes de desempenho do WordPress através do uso de ferramentas de software livre
Testes de desempenho do WordPress através do uso de ferramentas de software livre
Testes de desempenho do WordPress através do uso de ferramentas de software livre
Testes de desempenho do WordPress através do uso de ferramentas de software livre
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

×
Saving this for later? Get the SlideShare app to save on your phone or tablet. Read anywhere, anytime – even offline.
Text the download link to your phone
Standard text messaging rates apply

Testes de desempenho do WordPress através do uso de ferramentas de software livre

3,488

Published on

Minha apresentação no evento WordPress Summit 2010

Minha apresentação no evento WordPress Summit 2010

Published in: Technology
0 Comments
9 Likes
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total Views
3,488
On Slideshare
0
From Embeds
0
Number of Embeds
3
Actions
Shares
0
Downloads
71
Comments
0
Likes
9
Embeds 0
No embeds

Report content
Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
No notes for slide

Transcript

  • 1. Testes de desempenho do WordPress através do uso de ferramentas de software livre Mauro Pichiliani ( [email_address] )
  • 2.
    • Apresentar e discutir algumas abordagens de software gerais para testes no WordPress
    Objetivo
  • 3. Roteiro
    • Preparação do ambiente
    • Testes de usabilidade
    • Teses de código
    • Testes de banco de dados
    • Testes de carga
    • Conclusões e recomendações
  • 4. Preparação do ambiente (1)
    • Planejamento de testes: o quê, quando, onde, como, quem e porquê
    • Montar ambiente adequado:
      • Homologação x Produção
      • Local x Remoto
      • Versão atual x Versão nova x Versão alternativa
    • Alocar e configurar recursos
      • Hardware, software, link, usuários, etc
      • Avisar responsáveis (hosting, designers, programadores, etc)
      • Tempo, paciência, custo x benefíco, $$$
  • 5. Preparação do ambiente (2)
    • Desenvolvimento no WP != Desenvolvimento ‘padrão’:
      • Não há build
      • Uso de plug-ins
      • Conteúdo variado e postado pelo usuário
      • Altíssima disponibilidade
      • Pouca modelagem e programação
      • Baixa reusabilidade
      • Cenário de hosting
    • Conclusão: metodologias formais de teste não se adequam muito bem
    • AVISO: TESTES NÃO SUBSTITUEM VALIDAÇÃO E HOMOLOGAÇÃO!
  • 6. Preparação do ambiente (3)
    • Como começar?
      • Definir bem objetivos
      • Saber as métricas a serem utilizadas
      • Montar pequena escala (Ex: MythBusters)
      • Análise crítica (sucesso, falha, adequado, agradável, suficiente, necessário, etc)
      • Faça um teste por vez!
      • Teste várias ferramentas/serviços e escolha a mais adequada
      • Avalie a modificação da ferramenta
      • Artigos sobre criação de ambiente de desenvolvimento/testes:
        • http://migre.me/1nicu
        • http://migre.me/1nicJ
        • http://migre.me/1nide
        • http://migre.me/1nidX
    • Informações importantes sobre testes no WP:
      • http://migre.me/1nieo
  • 7. Testes de usabilidade (1)
    • Se possível, envolver o usuário e realizar testes de acessibilidade:
    • Teste automatizado de usabilidade: Selenium ( http://migre.me/1nieS )
    • Checagem de links, trackbacks, RSS e pingbacks:
      • Xenu ( http://migre.me/1nif9 )
      • LinkChecker ( http://migre.me/1nifm )
      • W3C Link Checker ( http://migre.me/1nifG )
      • Diversors web crawlers open source ( http://sf.net e http://www.codeprojetct.com )
    • Visualização em diversos browsers pela Web (screenshots e videos):
      • Browsershots ( http://migre.me/1nigr )
      • Spoon Browser SandBox ( http://migre.me/1nigI )
      • CrossBrowserTesting ( http://migre.me/1nihB )
      • IETester ( http://migre.me/1nihM )
      • Browsrcamp.com ( http://migre.me/1nihX )
      • Adobe BrowserLab ( http://migre.me/1nii9 )
      • iPhoneTester ( http://migre.me/1nijC ) e TestiPhone ( http://migre.me/1nijS )
      • Teste do Android com o SDK: http://migre.me/1nik7
    • Recomendação: instalar SO+browser+emulador+SDK em ambiente virtual (VMWare, VirtualBox, Wine, Parallels, etc) para testar interação
  • 8. Testes de usabilidade (2)
    • HeatMap com opção trial: Clickdensity ( http://migre.me/1nilB )
    • Clicktale ( http://migre.me/1nilK )
    • Perl + Javascript+ imageMagick: http://migre.me/1nimB
    • Web Click Stream Analysis: Degaa.NET ( http://migre.me/1nimI )
    • MySQL + Log Apache + Beowulf: http://migre.me/ibm/6V
    • Outros projeto open source para análise de log:
      • Apache2dot: http://migre.me/1nioo
      • Visitors: http://migre.me/1nioz
      • StatViz: http://migre.me/1nioH
      • Pathalizer: http://migre.me/1nioU
      • Web Utilization Miner (WUM): http://migre.me/1nip2
      • phpOpenTracker: http://migre.me/1nipp
  • 9. Testes de usabilidade (3)
    • Visualizando tráfego do site em tempo real: glTail ( http://migre.me/1nipF ), Logstalgia ( http://migre.me/1nipQ ) e Hummingbird ( http://migre.me/1niq0 )
    • Alternativas ao Google Analytics (não open source)
      • Plugin WP: Google Analytics for WordPress: http://migre.me/1niq8
      • Ommiture: http://migre.me/1niqm
      • Yahoo! Web Analytics: http://migre.me/1nir4
      • Overstat: http://migre.me/1nire
      • Woopra: http://migre.me/1nirq
      • Coremetrics: http://migre.me/1nirA
      • ClickTale: http://migre.me/1nirL
      • Webtrends: http://migre.me/1nisI
      • Lyrics: http://migre.me/1nisP
      • FireClick: http://migre.me/1nisT
  • 10. Testes de código (1)
    • WordPress = PHP + MYSQL
    • Verificação do código PHP:
      • Regras (Static Code Analysis)+duplicação de código: PMD ( http://migre.me/1nit4 )
      • Ferramenta de análise estática do código: PHP-Sat ( http://migre.me/1nitC )
      • Adequação à convenção de códigos: Spike PHPCheckstyle ( http://migre.me/1nitI )
      • Validação de padrões de código: CodeSnigger ( http://migre.me/1nitR )
      • Testes unitários com o PHP: PHPUnit ( http://migre.me/1niuc )
      • Verificador de testes de cobertura: PHP Test Coverage Tool ( http://migre.me/1nium ) e PHP Gcov ( http://migre.me/1niut )
      • Integração contínua: phpUnderControl ( http://migre.me/1niuH )
      • Artigo sobre técnicas de debug no PHP: http://migre.me/ibm/6W
  • 11. Testes de código (2)
    • Auxílio na programação:
      • Add-ons do Firefox:
        • PHP Developer Toolbar ( http://migre.me/1nivi )
        • PHP manual ( http://migre.me/1nivz )
        • WordPress Helper ( http://migre.me/1nivC )
      • IDE e debug do PHP onLine: Ideo.com ( http://migre.me/1nivJ )
      • Teste de expressões regulares: http://migre.me/1nivR e http://migre.me/1nivU e http://migre.me/1niw2
      • Validador geral: Validador do W3C: http://validator.w3.org/
    • Verificação contra SQL Injection e vulnerabilidades no PHP+MySQL:
      • Pixy ( http://migre.me/1niwj )
      • SQLPowerInjector: ( http://migre.me/1niwl )
      • SQLMap ( http://migre.me/1niwp )
      • OWASP SQLiX Project ( http://migre.me/1niwt )
      • Pangolin ( http://migre.me/1niwy )
      • MySQLoit ( http://migre.me/1niwJ )
  • 12. Testes de banco de dados (1)
    • Modelo de dados do WordPress em 2D
  • 13. Testes de banco de dados (2)
    • ou em 3D
    • Diva ( http://migre.me/1niwS ) e iFree3d ( http://migre.me/1niwW )
  • 14. Testes de banco de dados (3)
    • Meu artigo sobre modelo de dados do WordPress e assuntos relacionados: http://migre.me/1nixm
    • Ferramentas para testes e preenchimento do banco de dados do WP:
      • MySQL Test Framework ( http://migre.me/1nixv )
      • Apache JMeter ( http://migre.me/1nixF )
      • Alguns dados de testes para o DB do WordPress ( http://migre.me/1nixK )
      • Geração de massa de teste: DBMonster ( http://migre.me/1nixX )
      • Web Site GenerateData.com ( http://migre.me/1niy8 )
      • Geração de logs do apache: GenLog ( http://migre.me/1niyf )
      • Teste de stress simples: mysql-stress-test ( http://migre.me/1niyE )
      • Distributed load testing tool: Tsung ( http://migre.me/1niyr )
      • Projeto LTP (Linux Test Projetct) + Suíte para testes em banco de dados: http://migre.me/1niyN
  • 15. Testes de carga (1)
    • Muitas ferramentas para realizar o teste de carga. Muitas mesmo!
    • Basicamente enviam requisições para o servidor+opções
    • É preciso monitor o desempenho (mais ferramentas...)
    • Artigo bom sobre testes de carga com o WP: http://migre.me/1nkgc
    • Ferramentas prontas:
      • AB - Apache http server benchmarking tool. ( http://migre.me/1nkgD é uma ferramenta de linha de comando. Exemplo: “ab -n 100 -c 5 http://www.exemplo.com ”
      • JMeter ( http://migre.me/1nkgM )
      • Testes simples com o Raw Load Tester ( http://migre.me/1nkgV )
      • Visualização com monitoração+webservice: IxoraRMS ( http://migre.me/1nkhd
      • Teste de stress em níveis de profundidade JCrawler ( http://migre.me/1nkhu )
      • Microsoft WCAT (Web Capacity Analysis Tool): http://migre.me/1nkhF
      • Ferramenta nativa do WP: XDebug + mysqlnd ( http://migre.me/1nkhO )
      • Plug in do Wordpress para testes (requer XDebug): http://migre.me/1nkhU
  • 16. Testes de carga (2)
    • Plataformas de testes:
        • Plataforma para testes distribuídos Opensta ( http://migre.me/1nki6 )
        • Automação de testes+linguagem programação Watir ( http://migre.me/1nkic )
        • Gera classes de testes com requisição http Fast Web Performance Test Tool ( http://migre.me/1nkit )
        • Configuração baseada em texto e protocolo HTTP: Apache Flood ( http://migre.me/1nkiH )
        • Plataforma em Java Grinder ( http://migre.me/1nkiT )
  • 17. Conclusões e recomendações
    • Planeje o que você vai testar
    • Testes não resolvem problemas: no máximo comprovam a solução efetuada
    • Monitoria ajuda muito a controlar ambiente e evitar testes específicos
    • Escolha as ferramentas mais adequadas para o teste
    • Ferramentas simples de linha de comando até plataformas e frameworks para testes distribuídos
    • Testar não é luxo e precisa ser realizado para evitar situações desagradáveis (principalmente com o cliente…)

×