19
Aferindo a qualidade do serviço com testes de desempenho Igor Abade V. Leite @IgorAbade

Aferindo a qualidade do serviço com testes de desempenho Igor Abade V. Leite @IgorAbade

Embed Size (px)

Citation preview

Page 1: Aferindo a qualidade do serviço com testes de desempenho Igor Abade V. Leite @IgorAbade

Aferindo a qualidade do serviço com testes de desempenhoIgor Abade V. Leite@IgorAbade

Page 2: Aferindo a qualidade do serviço com testes de desempenho Igor Abade V. Leite @IgorAbade

Agenda

Intro

Scripts de

Navegação

Testes de Carga

Page 3: Aferindo a qualidade do serviço com testes de desempenho Igor Abade V. Leite @IgorAbade

MVP, Visual Studio ALM(antigo Team System )

Desde 2006

blog.lambda3.com.br/L3/IgorAbade

@igorabad

e

Page 4: Aferindo a qualidade do serviço com testes de desempenho Igor Abade V. Leite @IgorAbade

INTRODUÇÃO

Aferindo a qualidade do serviço com testes de desempenho

Page 5: Aferindo a qualidade do serviço com testes de desempenho Igor Abade V. Leite @IgorAbade

CenárioUma empresa de médio porte está em franco crescimento, aproveitando oportunidades do mercado. Suas aplicações estão se tornando mais complexas e o time de desenvolvedores está crescendo.

Nos últimos anos, a empresa tem sofrido com uma demanda crescente por suporte, devido a constantes falhas no software em produção. A qualidade do software gerado pelos times é sofrível e essa percepção tem crescido no mercado.

A empresa espera continuar crescendo, mas precisa corrigir e evitar novos problemas com a gestão de seu processo de desenvolvimento de software.

Recentemente, a empresa ouviu falar sobre as novas tendências no desenvolvimento ágil e os benefícios da abordagem para Modern Apps. 

Page 6: Aferindo a qualidade do serviço com testes de desempenho Igor Abade V. Leite @IgorAbade

Propósito do Teste de Desempenho

• Identificar a capacidade da aplicação

• Alguns objetivos– Explorar– Verificar– Encontrar os limites– “Quebrar”

Page 7: Aferindo a qualidade do serviço com testes de desempenho Igor Abade V. Leite @IgorAbade

Boas práticas

Testes de Desempenho ao longo do ciclo de desenvolvimento

Pegar problemas mais cedo

Definir linha-base de desempenho

Identificar padrões de desempenho

Sprint 1 Sprint 2 Implantaçãofeature

afeature

bfeature

cfeature

d

Teste deUnidade

TesteManual

Teste deRegressão

Teste deDesempenho

feature a

Page 8: Aferindo a qualidade do serviço com testes de desempenho Igor Abade V. Leite @IgorAbade

As Ferramentas

Visual Studio

Ultimate

• Web Performance Tests• Load Tests• Load Test Rigs

Visual Studio

Premium

• Profiling Tools• Performance Wizard

Page 9: Aferindo a qualidade do serviço com testes de desempenho Igor Abade V. Leite @IgorAbade

Topologia• Controlador

– Orquestra os testes

– Gerencia Licenciamento

– Coleta e armazena dados de desempenho

• Agentes (1..n)– Simulam

usuários

Coordena e coleta

informações

Controlador

Gera carga de usuários

Agente 1

Agente 2

Agente n

Aplicação sob Teste

Servidor Web

Servidor BD

Page 10: Aferindo a qualidade do serviço com testes de desempenho Igor Abade V. Leite @IgorAbade

Montando o ambiente de testesAferindo a qualidade do serviço com testes de desempenhoIgor Abade V. Leite

Page 11: Aferindo a qualidade do serviço com testes de desempenho Igor Abade V. Leite @IgorAbade

CRIANDO SCRIPTS DE NAVEGAÇÃO

Aferindo a qualidade do serviço com testes de desempenho

Page 12: Aferindo a qualidade do serviço com testes de desempenho Igor Abade V. Leite @IgorAbade

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)

Page 13: Aferindo a qualidade do serviço com testes de desempenho Igor Abade V. Leite @IgorAbade

Testes de Desempenho WebGravados no

browser

Extração automática de

parâmetros

Grava e gerencia think time

Define metas de desempenho

Guiado por dados

Page 14: Aferindo a qualidade do serviço com testes de desempenho Igor Abade V. Leite @IgorAbade

Criando scripts com Web Performance TestAferindo a qualidade do serviço com testes de desempenhoIgor Abade V. Leite

Page 15: Aferindo a qualidade do serviço com testes de desempenho Igor Abade V. Leite @IgorAbade

CRIANDO TESTES DE CARGA

Aferindo a qualidade do serviço com testes de desempenho

Page 16: Aferindo a qualidade do serviço com testes de desempenho Igor Abade V. Leite @IgorAbade

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

Page 17: Aferindo a qualidade do serviço com testes de desempenho Igor Abade V. Leite @IgorAbade

Criando testes de carga com Load TestAferindo a qualidade do serviço com testes de desempenhoIgor Abade V. Leite

Page 18: Aferindo a qualidade do serviço com testes de desempenho Igor Abade V. Leite @IgorAbade

Dúvidas?Aferindo a qualidade do serviço com testes de desempenhoIgor Abade V. Leite

Page 19: Aferindo a qualidade do serviço com testes de desempenho Igor Abade V. Leite @IgorAbade

Para Saber Mais

• Máquina Virtual + Hands-on Labs• http://aka.ms/vs11almvm

• Getting Started with Load Testing in Visual Studio 2012• http://tinyurl.com/VSLoadTest

• E-book: Testing for Continuous Delivery with Visual Studio 2012• http://tinyurl.com/TestingForContinuousDelivery

• Licenciamento• http://tinyurl.com/VSLicensing

Igor Abade V. Leite@IgorAbade