Más contenido relacionado
Cloud-based Load Testing - Bônus: Application Insights [MVP ShowCast 2013 - DEV - Gerenciamento de projetos & Application Lifecycle Management]
- 1. SESSÃO: DESENVOLVIMENTO
TRILHA: GERENCIAMENTO DE PROJETOS & APPLICATION LIFECYCLE MANAGEMENT
MVP ShowCast 2013
Cloud-based Load Testing
Igor Abade Leite
Visual Studio ALM
Owner – Lambda3
@igorabade
© 2013, MVP ShowCast. Evento organizado por MVPs do Brasil com apoio da Microsoft.
- 2. SESSÃO: DESENVOLVIMENTO
TRILHA: GERENCIAMENTO DE PROJETOS & APPLICATION LIFECYCLE MANAGEMENT
Sobre mim
♦Igor Abade (@igorabade)
♦ Microsoft MVP, Visual Studio ALM
♦ Adora falar sobre Team Foundation Server (TFS)
♦Sócio da Lambda3
♦ Consultoria ALM/TFS, Agilidade/Scrum, Arquitetura
♦ Desenvolvimento de Sistemas
♦ Treinamentos
♦ Parceira Microsoft Gold ALM
© 2013, MVP ShowCast. Evento organizado por MVPs do Brasil com apoio da Microsoft.
- 3. SESSÃO: DESENVOLVIMENTO
TRILHA: GERENCIAMENTO DE PROJETOS & APPLICATION LIFECYCLE MANAGEMENT
MVP ShowCast 2013
Introdução
Cloud-based Load Testing
Igor Abade V. Leite
© 2013, MVP ShowCast. Evento organizado por MVPs do Brasil com apoio da Microsoft.
- 4. SESSÃO: DESENVOLVIMENTO
TRILHA: GERENCIAMENTO DE PROJETOS & APPLICATION LIFECYCLE MANAGEMENT
Propósito do Teste de Desempenho
♦Identificar a capacidade da
aplicação
♦Alguns objetivos
♦ Explorar
♦ Verificar
♦ Encontrar os limites
♦ “Quebrar”
© 2013, MVP ShowCast. Evento organizado por MVPs do Brasil com apoio da Microsoft.
- 5. SESSÃO: DESENVOLVIMENTO
TRILHA: GERENCIAMENTO DE PROJETOS & APPLICATION LIFECYCLE MANAGEMENT
Boas práticas
Identificar padrões de
desempenho
Definir linha-base de
desempenho
Sprint 1
feature a
feature b
Teste de
Unidade
Teste
Manual
Pegar problemas mais
cedo
Testes de Desempenho
ao longo do ciclo de
desenvolvimento
Teste de
Regressão
Teste de
Desempenho
© 2013, MVP ShowCast. Evento organizado por MVPs do Brasil com apoio da Microsoft.
Sprint 2
feature c
feature d
Implantação
- 6. SESSÃO: DESENVOLVIMENTO
TRILHA: GERENCIAMENTO DE PROJETOS & APPLICATION LIFECYCLE MANAGEMENT
As Ferramentas de Hoje
Visual
Studio
Ultimate
Visual Studio
Premium
•Web Performance Tests
•Load Tests
•Load Test Rigs
• Profiling Tools
• Performance Wizard
© 2013, MVP ShowCast. Evento organizado por MVPs do Brasil com apoio da Microsoft.
- 7. SESSÃO: DESENVOLVIMENTO
TRILHA: GERENCIAMENTO DE PROJETOS & APPLICATION LIFECYCLE MANAGEMENT
Topologia
♦Controlador
♦ Orquestra os testes
♦ Gerencia Licenciamento
♦ Coleta e armazena dados de
desempenho
Coordena e
coleta
informações
Gera carga
de usuários
Aplicação
sob Teste
Agente 1
Servidor
Web
♦Agentes (1..n)
♦ Simulam usuários
Controlador
Agente 2
Agente n
© 2013, MVP ShowCast. Evento organizado por MVPs do Brasil com apoio da Microsoft.
Servidor BD
- 8. SESSÃO: DESENVOLVIMENTO
TRILHA: GERENCIAMENTO DE PROJETOS & APPLICATION LIFECYCLE MANAGEMENT
Montando o ambiente de testes
Cloud-based Load Testing
Igor Abade V. Leite
© 2013, MVP ShowCast. Evento organizado por MVPs do Brasil com apoio da Microsoft.
- 9. SESSÃO: DESENVOLVIMENTO
TRILHA: GERENCIAMENTO DE PROJETOS & APPLICATION LIFECYCLE MANAGEMENT
MVP ShowCast 2013
Criando Scripts de Navegação
Cloud-based Load Testing
Igor Abade V. Leite
© 2013, MVP ShowCast. Evento organizado por MVPs do Brasil com apoio da Microsoft.
- 10. SESSÃO: DESENVOLVIMENTO
TRILHA: GERENCIAMENTO DE PROJETOS & APPLICATION LIFECYCLE MANAGEMENT
Tudo começa com um script...
♦Descreve os cenários de
navegação
♦Simula os acessos feitos por um
usuário
♦Web Performance Test (Teste de
Desempenho Web)
© 2013, MVP ShowCast. Evento organizado por MVPs do Brasil com apoio da Microsoft.
- 11. SESSÃO: DESENVOLVIMENTO
TRILHA: GERENCIAMENTO DE PROJETOS & APPLICATION LIFECYCLE MANAGEMENT
Testes de Desempenho Web
Gravados no browser
Guiado por dados
Define metas de desempenho
© 2013, MVP ShowCast. Evento organizado por MVPs do Brasil com apoio da Microsoft.
Extração automática de
parâmetros
Grava e gerencia think time
- 12. SESSÃO: DESENVOLVIMENTO
TRILHA: GERENCIAMENTO DE PROJETOS & APPLICATION LIFECYCLE MANAGEMENT
Criando scripts de navegação com Web Performance Test
Cloud-based Load Testing
Igor Abade V. Leite
© 2013, MVP ShowCast. Evento organizado por MVPs do Brasil com apoio da Microsoft.
- 13. SESSÃO: DESENVOLVIMENTO
TRILHA: GERENCIAMENTO DE PROJETOS & APPLICATION LIFECYCLE MANAGEMENT
MVP ShowCast 2013
Criando Testes de Carga
Cloud-based Load Testing
Igor Abade V. Leite
© 2013, MVP ShowCast. Evento organizado por MVPs do Brasil com apoio da Microsoft.
- 14. SESSÃO: DESENVOLVIMENTO
TRILHA: GERENCIAMENTO DE PROJETOS & APPLICATION LIFECYCLE MANAGEMENT
Teste de Carga no Visual Studio
♦ Modelo flexível de Carga
♦ “Cenários” para modelar diferentes
grupos de usuários
♦ Diversos padrões de carga
♦ Baseados em metas
♦ Crescente ou Constante
♦ Personalizado
♦ Modela diferentes browsers e redes
♦ Duração definida por tempo ou iterações
♦ Testes “de unidade” (MSTest) podem
ser executados para gerar carga
♦ Serviços Web
♦ Acesso direto a banco de dados
© 2013, MVP ShowCast. Evento organizado por MVPs do Brasil com apoio da Microsoft.
- 15. SESSÃO: DESENVOLVIMENTO
TRILHA: GERENCIAMENTO DE PROJETOS & APPLICATION LIFECYCLE MANAGEMENT
Criando testes de carga com Load Test
Cloud-based Load Testing
Igor Abade V. Leite
© 2013, MVP ShowCast. Evento organizado por MVPs do Brasil com apoio da Microsoft.
- 16. SESSÃO: DESENVOLVIMENTO
TRILHA: GERENCIAMENTO DE PROJETOS & APPLICATION LIFECYCLE MANAGEMENT
Recapitulando…
Configurar ambiente
de testes
Criar testes – Web
Performance e Load
Tests
Executar Testes
© 2013, MVP ShowCast. Evento organizado por MVPs do Brasil com apoio da Microsoft.
Analisar resultados
Corrigir problemas
de
escala/desempenho
- 17. SESSÃO: DESENVOLVIMENTO
© 2013, MVP ShowCast. Evento organizado por MVPs do Brasil com apoio da Microsoft.
TRILHA: GERENCIAMENTO DE PROJETOS & APPLICATION LIFECYCLE MANAGEMENT
- 18. SESSÃO: DESENVOLVIMENTO
TRILHA: GERENCIAMENTO DE PROJETOS & APPLICATION LIFECYCLE MANAGEMENT
Desafios do modelo atual
♦Provisionamento é complexo
♦ Envolve vários times, como Infra e
Desenvolvimento
♦Lento para escalar
♦ Por ex.: 100 -> 1000 usuários
virtuais
♦Ambiente caro de se criar e
manter
♦ Precisa adicionar mais hardware
para aumentar escala
♦ Fica ocioso boa parte do tempo
© 2013, MVP ShowCast. Evento organizado por MVPs do Brasil com apoio da Microsoft.
- 19. SESSÃO: DESENVOLVIMENTO
TRILHA: GERENCIAMENTO DE PROJETOS & APPLICATION LIFECYCLE MANAGEMENT
Alternativa – Test Rig no Azure
♦Test Rig criada
com VMs Azure
♦Elimina custo de
aquisição de
hardware
♦Elimina
desperdício de
hardware ocioso
♦Difícil de
configurar e
manter
© 2013, MVP ShowCast. Evento organizado por MVPs do Brasil com apoio da Microsoft.
- 20. SESSÃO: DESENVOLVIMENTO
TRILHA: GERENCIAMENTO DE PROJETOS & APPLICATION LIFECYCLE MANAGEMENT
MVP ShowCast 2013
Testes de Carga no Visual Studio Online
Cloud-based Load Testing
Igor Abade V. Leite
© 2013, MVP ShowCast. Evento organizado por MVPs do Brasil com apoio da Microsoft.
- 21. SESSÃO: DESENVOLVIMENTO
TRILHA: GERENCIAMENTO DE PROJETOS & APPLICATION LIFECYCLE MANAGEMENT
Nova Alternativa: Visual Studio Online
♦ Anteriormente conhecido
como:
♦ Team Foundation Service
Preview (TFS Preview)
♦ Team Foundation Service
(TF Service)
♦ Serviços na nuvem para
desenvolvedores
♦ TFS (Controle de Versão, Itens
de Trabalho, Relatórios)
♦ Automação de Builds
♦ Testes de Carga Elásticos
© 2013, MVP ShowCast. Evento organizado por MVPs do Brasil com apoio da Microsoft.
- 22. SESSÃO: DESENVOLVIMENTO
TRILHA: GERENCIAMENTO DE PROJETOS & APPLICATION LIFECYCLE MANAGEMENT
Testes de Carga Elásticos
♦ Requer Visual
Studio Ultimate
2013
♦ Elimina
necessidade de
criação de test rigs
locais
♦ Controladores e
agentes estão na
nuvem
♦ Provisionados e
escalados
automaticamente
Pool de Agentes de Teste (Dinâmico)
Load Test
Web Service
Worker
Azure Tables
Visual Studio
Ultimate 2013
© 2013, MVP ShowCast. Evento organizado por MVPs do Brasil com apoio da Microsoft.
Azure Blobs
Resultados
- 23. SESSÃO: DESENVOLVIMENTO
TRILHA: GERENCIAMENTO DE PROJETOS & APPLICATION LIFECYCLE MANAGEMENT
Testes de Carga Elásticos com Visual Studio Online
Cloud-based Load Testing
Igor Abade V. Leite
© 2013, MVP ShowCast. Evento organizado por MVPs do Brasil com apoio da Microsoft.
- 24. SESSÃO: DESENVOLVIMENTO
TRILHA: GERENCIAMENTO DE PROJETOS & APPLICATION LIFECYCLE MANAGEMENT
Recapitulando...
♦ Elastic Load Test
do Visual Studio
Online
♦ Alternativa para
evitar criação de
rigs
♦ Mais fácil de
usar e manter
♦ Acesso
limitado aos
indicadores de
desempenho
da aplicação
© 2013, MVP ShowCast. Evento organizado por MVPs do Brasil com apoio da Microsoft.
- 25. SESSÃO: DESENVOLVIMENTO
TRILHA: GERENCIAMENTO DE PROJETOS & APPLICATION LIFECYCLE MANAGEMENT
Comparando duas soluções
On-premise
♦Contras
♦ Cara de montar e manter
♦ Difícil de configurar
♦Prós
♦ Não requer acesso à internet
♦ Acesso amplo a indicadores
Cloud-based
♦Prós
♦ Barato de montar e manter
♦ Dispensa configuração
♦Contras
♦ Requer acesso à internet
♦ Acesso limitado a indicadores
Como ter o melhor dos dois mundos?
© 2013, MVP ShowCast. Evento organizado por MVPs do Brasil com apoio da Microsoft.
- 26. SESSÃO: DESENVOLVIMENTO
© 2013, MVP ShowCast. Evento organizado por MVPs do Brasil com apoio da Microsoft.
TRILHA: GERENCIAMENTO DE PROJETOS & APPLICATION LIFECYCLE MANAGEMENT
- 27. SESSÃO: DESENVOLVIMENTO
TRILHA: GERENCIAMENTO DE PROJETOS & APPLICATION LIFECYCLE MANAGEMENT
MVP ShowCast 2013
Application Insights
Cloud-based Load Testing
Igor Abade V. Leite
© 2013, MVP ShowCast. Evento organizado por MVPs do Brasil com apoio da Microsoft.
- 28. SESSÃO: DESENVOLVIMENTO
TRILHA: GERENCIAMENTO DE PROJETOS & APPLICATION LIFECYCLE MANAGEMENT
O que é o Application Insights
♦Novo serviço de monitoramento
de aplicações do Visual Studio
Online
♦Coleta indicadores de
desempenho, logs e erros de
aplicações em diversas
plataformas
♦ Server-side .NET, Java etc.
♦ Windows Phone, iOS, Android...
♦ On-premise ou na nuvem
© 2013, MVP ShowCast. Evento organizado por MVPs do Brasil com apoio da Microsoft.
- 29. SESSÃO: DESENVOLVIMENTO
TRILHA: GERENCIAMENTO DE PROJETOS & APPLICATION LIFECYCLE MANAGEMENT
Application Insights
Disponibilidade
Comportamento
Melhorias
Dashboards de Saúde
Notificações & Insights
Dashboards de Uso
Minha aplicação está disponível?
Desempenho está satisfatório?
Dashboard único
O que há de errado?
Mostre-me código suspeito e casos de teste
Onde devemos investor?
Mostre-me principais funcionalidades e
padrões de uso de meus clientes
© 2013, MVP ShowCast. Evento organizado por MVPs do Brasil com apoio da Microsoft.
- 30. SESSÃO: DESENVOLVIMENTO
TRILHA: GERENCIAMENTO DE PROJETOS & APPLICATION LIFECYCLE MANAGEMENT
Por onde começar?
Alterações de
Código
Não-invasivo
Adoção gradual dos recursos do Application Insights
© 2013, MVP ShowCast. Evento organizado por MVPs do Brasil com apoio da Microsoft.
- 31. SESSÃO: DESENVOLVIMENTO
Precisamos
de suporte
ao Chrome!
TRILHA: GERENCIAMENTO DE PROJETOS & APPLICATION LIFECYCLE MANAGEMENT
Mais fatos e menos emoção no
planejamento do produto
REQUIREMENTS
Precisamos
adicionar o
menu às
outras
páginas
BACKLOG
Build | Measure | Learn
Construct
Temos de
incluir
conteúdo
local para a
Califórnia!
Collaboration
Operate
RELEASE
WORKING SOFTWARE
© 2013, MVP ShowCast. Evento organizado por MVPs do Brasil com apoio da Microsoft.
- 32. SESSÃO: DESENVOLVIMENTO
TRILHA: GERENCIAMENTO DE PROJETOS & APPLICATION LIFECYCLE MANAGEMENT
Eu não acho
que é o
banco de
dados…
Transformando o ruído em ação
REQUIREMENTS
Putz! Por
onde a
gente
começa?!
BACKLOG
Build | Measure | Learn
Construct
A culpa não
deve ser da
nossa
aplicação…
Collaboration
Operate
RELEASE
WORKING SOFTWARE
© 2013, MVP ShowCast. Evento organizado por MVPs do Brasil com apoio da Microsoft.
- 33. SESSÃO: DESENVOLVIMENTO
Ei, está
aumentando
o número de
exceções…
TRILHA: GERENCIAMENTO DE PROJETOS & APPLICATION LIFECYCLE MANAGEMENT
Uma Bola de Cristal?
REQUIREMENTS
Estranho, a
memória
disponível
está
diminuindo…
BACKLOG
Build | Measure | Learn
Construct
Estou
recebendo
alertas de
limite
ultrapassado!
Collaboration
Operate
RELEASE
WORKING SOFTWARE
© 2013, MVP ShowCast. Evento organizado por MVPs do Brasil com apoio da Microsoft.
- 34. SESSÃO: DESENVOLVIMENTO
Que estranho!
Está
aumentando o
número de
usuários!
TRILHA: GERENCIAMENTO DE PROJETOS & APPLICATION LIFECYCLE MANAGEMENT
Alertas antecipados
REQUIREMENTS
Hum… O
desempenho
está indo de
oito a
oitenta!
Nossa
disponibilidade
caiu para 94,6%
- o que está
acontecendo?
BACKLOG
Build | Measure | Learn
Construct
Collaboration
Operate
RELEASE
WORKING SOFTWARE
© 2013, MVP ShowCast. Evento organizado por MVPs do Brasil com apoio da Microsoft.
- 35. SESSÃO: DESENVOLVIMENTO
TRILHA: GERENCIAMENTO DE PROJETOS & APPLICATION LIFECYCLE MANAGEMENT
Application Insights
Cloud-based Load Testing
Igor Abade V. Leite
© 2013, MVP ShowCast. Evento organizado por MVPs do Brasil com apoio da Microsoft.
- 36. SESSÃO: DESENVOLVIMENTO
TRILHA: GERENCIAMENTO DE PROJETOS & APPLICATION LIFECYCLE MANAGEMENT
Recapitulando...
REQUIREMENTS
BACKLOG
Monitoramento de Uso
Monitoramento de Ambiente
Build | Measure | Learn
Construct
Collaboration
Operate
Monitoramento da Aplicação
Analytics e Log Mining
RELEASE
WORKING SOFTWARE
© 2013, MVP ShowCast. Evento organizado por MVPs do Brasil com apoio da Microsoft.
Descoberta rápida com Alertas
- 37. SESSÃO: DESENVOLVIMENTO
Perguntas & Respostas
© 2013, MVP ShowCast. Evento organizado por MVPs do Brasil com apoio da Microsoft.
TRILHA: GERENCIAMENTO DE PROJETOS & APPLICATION LIFECYCLE MANAGEMENT