View
483
Download
0
Category
Preview:
DESCRIPTION
Palestra sobre testes de performance
Citation preview
Avaliando a Performance de
Aplicativos
Leonardo MolinariConsultor Sênior de Qualidade de Software
2
Agenda
• Gargalo em Sistemas
• Capacidade de um Sistema
• Teste de Performance
• Automação de Teste de Performance
• Avaliando Performance
• Conclusões
3
Sistema sob
Testes
Estado do Programa
Entradas Intencionais
Estado do Sistema
Recursos do sistema E de Configuração
Entrada de outrosProcessos, clientes e servidores
Saídas Monitoradas
Estado do Programa, incluindo saídas inesperadas
Estado do Sistema
Impacto na conexão dos devices / recursos de sistema
Saída para outrosProcessos, clientes e servidores
Gargalo em Sistemas
4
5
Diagrama de Gargalos
6
Gargalos...
7
Quanto você perde por transações que falham...
8
Problemas mais comuns em Web App
• Conexões com BD e Queries
• Código do Application Server
• Hardware do WebServer
• Network em si
9
Capacidade de um Sistema
Capacidade de Utilização= [saída atual]/[capacidade de projeto]
Capacidade de Eficiência= [saída atual]/[capacidade efetiva]
0
Capacidade De Projeto
CapacidadeEfetiva
Saída AtualPeriod #5
Saída AtualPeriod #8
Gerencia de Foco:Perda na Capacidade de
Produção
10
6am 12pm 6pm 12am 6am 12pm 6pm 12amDay 1 Day 2
6am 12pm 6pm 12am 6am 12pm 6pm 12amDay 1 Day 2
Demand Surge
CyclicalRandom & Infrequent
Demanda de um e-Service
11
Teste de Performance
• Execução controlada e mensurada da execução de processos de produção com volumes e dados reais
• O objetivo primário é entender como as características da CARGA afetam a performance – Se mensuração da performance é inaceitável você
pode:• Implementar esforços de tuning• Mudar a Arquitetura
12
Teste de Carga vs. Teste de Stress
• Teste de Carga– Mede a performance da carga
executada em suas variações (workload)
• Teste de Stress– Onde e Quando o sistema
quebra ?– Determinação da máxima
entrada no sistema
13
Testes de Performance NÃO é
• Teste Funcional
• Testes de Aceitação do Usuário
• Teste técnico de componentes– “Backup & recovery”– “Fail over”– “Patching procedures”
14
Porque preciso testar a Performance ?
• Minimizar o risco
• Testar performance do hardware e os requerimentos
• Avaliar e Testar as customizações
• Testar do início ao fim do processamento
• Identificação do “breaking point”
15
Incrementando a importância dos Testes de Performance
• Grandes bases de dados
• Avaliar cada vez mais processos críticos de negócio
• Alta visibilidade de questões de performance
• Consolidação do sistema
16
Fatores Críticos de Sucesso
• Definição clara de objetivos
• Definição clara do escopo de teste
• Informações do teste vem dos gerentes, usuários e do pessoal de TI
• Definição dos requerimentos de performance– Ex: um jornal importa 1.000.000 de linhas
por hora para dentro do site
17
Vuser Vuser Vuser Vuser
Executar multiplos virtual users em uma única máquinaExecutar multiplos virtual users em uma única máquina
Vuser Vuser
VuserVuser
Gerenciar virtual vsers (Vusers) de uma única Estação Gerenciar virtual vsers (Vusers) de uma única Estação
Controller
Automação de Testes de Performance
Substituir usuários humanos por virtual users Substituir usuários humanos por virtual users
Application Under Test
18
Processo de Testes de Performance
Identificar processos de negócios e o
modelo de uso
Capturar e gravar os processos de
negócio para criar os Vusers
Criar os cenários de carga
Executar o Cenário e Monitoramento de
Performance
Analisar e interpretar os resultado
Otimizar/Tuning de Sistema
1
2
3
4
5
19
Cliente Demora na Rede Demora em Database/OS
• Analise o comportamento da aplicação e • Isola gargalos de performance para otimizar a performance• Use a Automação p/ gerar atividade de milhares de usuários• Obtenha informações do client, rede e servidor (ex: counters)
Avaliando Performance
20
Avaliando Performance
Analysis User Model
Full and Summary Data
Analysis Functionality
Advanced Graph Conparison
Web Page Breakdown
21
Avaliando Performance
22
Throughput
Avaliando Performance
23
Passos para Escalabilidade Web
Web Transaction Diet !!!
fat-transactionsload
distributionpersonaldemand bye-bye
1 2 3 4
24
Conclusões
• Organização– Separe os problemas pela Estrutura Física da
Aplicação
• Paciência– Analise o tempo de cada Transação em detalhe
• Automatize até onde for possível– Faça uso da Automação de Testes de
Performance até onde for possível
25
Reflexão
Teste de
Performance =
26
Conhecendo o Palestrante
Consultor de Sênior de Qualidade de Software Engº de Sistemas-UERJ Pós-Graduado em Gestão Pela Qualidade Total – Univ. Estácio de Sá Certificação/Experiência (metodologia, processos e ferramentas) em
Testes, Requisitos, Ger. de Configuração, Ger. Projetos, OpenSource Experiência Nacional e Internacional em diversos segmentos
NOVO
3ª Edição
27
Conhecendo o Palestrante
• Atuação de Consultoria em diversos níveis:– Testes de Software (foco principal)
• Planejamento• Ferramentas de automação de fornecedores• Ferramentas de automação opensource• Técnicas & estratégias• Otimização de ambientes de testes• Treinamento(diversos níveis) e palestras• Gerência de Projetos de Testes• Capacitação de Testadores• Etc.
– Gerência de Requisitos– Gerência de Configuração– Qualidade de Software
28
Palestrante: Leonardo Molinari E-mail: lm7k@yahoo.com.br Web Site:
http://geocities.yahoo.com.br/lm7k/testes.html Blog (lançamento exclusivo aqui !!!):
http://diariodaqualidade.blogspot.com
Dúvidas ???
Recommended