Teste de Performance no Contexto de uma   Aplicação de Nota Fiscal Eletrônica
Alan Correa MoraisMim    Líder de Testes na Sonda IT    Especialista em Nota Fiscal Eletrônica    Engenheiro da Computação...
Agenda    Introdução    Teste de Performance    Metodologia    Ferramentas de Teste de Desempenho    A Nota Fiscal Eletrôn...
Introdução - Problema    Como garantir que eu tenho o ambiente de acordo    com as minhas necessidade atuais e futuras    ...
História baseada em Fatos Reais    Dada uma aplicação “BUG FREE”5
História baseada em Fatos Reais    Usuário Filial Bahia: Nossa esse sistema é muito    lento!!!6
História baseada em Fatos Reais    Usuário Filial São Paulo: Nossa esse sistema é tão    rápido!!!7
História baseada em Fatos Reais    Administrador do Sistema: E agora???8
Introdução    Teste de Performance (Desempenho)      Tempo x Carga para determinar a escalabilidade e confiabilidade      ...
Teste de Desempenho     Benefícios       Identificação se o ambiente possui o desempenho suficiente de       acordo com os...
Teste de Desempenho     Benefícios       Identificação do comportamento do ambiente com carga normal,       picos e carga ...
Tipos de Teste de Performance     Teste de Avaliação de Desempenho       Avalia o comportamento do sistema em condições no...
Metodologia     Perfomance Testing Life Cycle     Método: Performance Testing Guidance for Web     Applications (Microsoft...
Ferramentas     MS Visual Studio 2010 Ultimate     Jmeter     Perfmon (Análise de Desempenho de Hardware)     IBM Rational...
O Projeto Nota Fiscal Eletrônica (NF-e)     Substituição do antigo modelo de Nota Fiscal     Modelo 1/1 A     Acoberta o t...
Processo de Venda Simples (NF-e)                     2 – Envia ao Cliente              1 - Autoriza o Uso16
Uma Aplicação de NF-e     Processamento de Emissão de NF-es e ou     Recebimento de NF-es     Deve possuir mais de um comp...
Topologia Lógica                    Provedor de                WebService       ERP           Processos    Internet       ...
Arquitetura do Provedor de Processos                     Gera      Envia   ConsultaGera      Valida                       ...
Preparando o Teste     Foi necessária a criação de um ferramenta de     Sampler para geração de NF-es     Foi criado Perfo...
Indicadores voltados ao Negócio     Teste de Desempenho       Foco em indicadores de tempo de resposta. (Ex: Nº de NF-es p...
Indicadores voltados ao Negócio     Teste de Desempenho      Descrição                       Valor              Observação...
Indicadores voltados ao Negócio     Teste de Carga       Principal objetivo: Identificar o comportamento do ambiente de   ...
Indicadores voltados ao Negócio     Teste de Carga24
Indicadores voltados ao Negócio     Teste de Carga25
Indicadores voltados ao Negócio     Teste de Stress       Principal objetivo: Identificar o comportamento do ambiente de  ...
Indicadores voltados ao Negócio     Teste de Stress27
Demonstração     Jmeter + Perfmon     Visual Studio 2010 Ultimate28
Perguntas???29
Próximos SlideShares
Carregando em…5
×

Teste de performance no contexto de uma aplicação de nf e

555 visualizações

Publicada em

Publicada em: Tecnologia
0 comentários
0 gostaram
Estatísticas
Notas
  • Seja o primeiro a comentar

  • Seja a primeira pessoa a gostar disto

Sem downloads
Visualizações
Visualizações totais
555
No SlideShare
0
A partir de incorporações
0
Número de incorporações
1
Ações
Compartilhamentos
0
Downloads
6
Comentários
0
Gostaram
0
Incorporações 0
Nenhuma incorporação

Nenhuma nota no slide

Teste de performance no contexto de uma aplicação de nf e

  1. 1. Teste de Performance no Contexto de uma Aplicação de Nota Fiscal Eletrônica
  2. 2. Alan Correa MoraisMim Líder de Testes na Sonda IT Especialista em Nota Fiscal Eletrônica Engenheiro da Computação com Ênfase em Engenharia de Software Técnico em Redes de Comunicação @alancmorais alancmorais@gmail.com alancmorais.blogspot.com2
  3. 3. Agenda Introdução Teste de Performance Metodologia Ferramentas de Teste de Desempenho A Nota Fiscal Eletrônica Uma Aplicação de NF-e Medindo Informações Importantes para o Negócio Demonstração Discussão3
  4. 4. Introdução - Problema Como garantir que eu tenho o ambiente de acordo com as minhas necessidade atuais e futuras quando adquiro uma solução? Como responder a esta pergunta utilizando estas dimensões? Tempo Capacidade Desempenho Disponibilidade Tolerância a Falhas4
  5. 5. História baseada em Fatos Reais Dada uma aplicação “BUG FREE”5
  6. 6. História baseada em Fatos Reais Usuário Filial Bahia: Nossa esse sistema é muito lento!!!6
  7. 7. História baseada em Fatos Reais Usuário Filial São Paulo: Nossa esse sistema é tão rápido!!!7
  8. 8. História baseada em Fatos Reais Administrador do Sistema: E agora???8
  9. 9. Introdução Teste de Performance (Desempenho) Tempo x Carga para determinar a escalabilidade e confiabilidade Baseado em Requisitos não funcionais Gargalos Expectativas!!! Definir Métricas para executar Medições Voltado ao ambiente e não à funcionalidade Ambiente similar ao de Produção9
  10. 10. Teste de Desempenho Benefícios Identificação se o ambiente possui o desempenho suficiente de acordo com os critérios do cliente Identificação de quanto tempo o ambiente poderá suportar a carga aplicada e quando se tornará obsoleto Identificação dos períodos críticos e médias diárias de utilização do sistema e impacto no ambiente Cálculo de disponibilidade do ambiente de acordo com a carga aplicada Identificação de possíveis gargalos no ambiente10
  11. 11. Teste de Desempenho Benefícios Identificação do comportamento do ambiente com carga normal, picos e carga máxima (Stress) Identificação do comportamento do ambiente em caso de falhas (tolerância a falhas) específicas do tipo de aplicativo. Ex: Contingência NF-e11
  12. 12. Tipos de Teste de Performance Teste de Avaliação de Desempenho Avalia o comportamento do sistema em condições normais de utilização Avaliação do Ambiente Teste de Carga Avalia o ambiente em condições isoladas de carga Interessante para colher indicadores de cargas em períodos de pico de utilização Teste de Stress Avalia o ambiente em condições superiores a máxima suportada Interessante para executar um teste de recuperação12
  13. 13. Metodologia Perfomance Testing Life Cycle Método: Performance Testing Guidance for Web Applications (Microsoft) 1 – Identificar o Ambiente 2 - Identificar o critério de Aceite (Questionário) 3 – Planejar e Desenhar os Testes 4 – Preparar o Ambiente 5 – Configurar as Ferramentas de Teste 6 – Executar o Teste 7 – Analisar Resultados, Ajustar e Retestar13
  14. 14. Ferramentas MS Visual Studio 2010 Ultimate Jmeter Perfmon (Análise de Desempenho de Hardware) IBM Rational Performance Tester HP Mercury Loadrunner Borland Silk Performer14
  15. 15. O Projeto Nota Fiscal Eletrônica (NF-e) Substituição do antigo modelo de Nota Fiscal Modelo 1/1 A Acoberta o trânsito de mercadorias Obrigatoriedade Nacional Baseada em WebService e XML15
  16. 16. Processo de Venda Simples (NF-e) 2 – Envia ao Cliente 1 - Autoriza o Uso16
  17. 17. Uma Aplicação de NF-e Processamento de Emissão de NF-es e ou Recebimento de NF-es Deve possuir mais de um componente Provedor de Interface Provedor de Processos (máquina de estados finitos) Deve possuir um banco de dados Deve possuir conexão com a internet Deve possuir um desempenho aceitável de acordo com a necessidade do cliente17
  18. 18. Topologia Lógica Provedor de WebService ERP Processos Internet SEFAZs BD Ambiente Objetivo Client de Provedor de Conexão HTTPS Interface Interface Conexão com o BD18
  19. 19. Arquitetura do Provedor de Processos Gera Envia ConsultaGera Valida Imprime Lote Lote LoteXML XML DANFE XML XML XML Autorização de Uso de uma NF-e
  20. 20. Preparando o Teste Foi necessária a criação de um ferramenta de Sampler para geração de NF-es Foi criado Performance Counter na aplicação que permitiu a visualização via Perfmon NF-es por Minuto NF-es por Processo Tempo médio de resposta SELECT FOR UPDATE (Banco de Dados) Tempo médio para conexão no Banco de Dados Tempo médio de comunicação com a SEFAZ20 A SEFAZ FOI NOTIFICADA SOBRE O TESTE
  21. 21. Indicadores voltados ao Negócio Teste de Desempenho Foco em indicadores de tempo de resposta. (Ex: Nº de NF-es por minuto) Identificação destes indicadores em um determinado espaço de tempo Identificação de utilização de Hardware do ambiente utilizado Identificação de indicadores alvo x variáveis de ambiente21
  22. 22. Indicadores voltados ao Negócio Teste de Desempenho Descrição Valor Observação Tempo de resposta Médio 33,3 segundos/NF-e Média de processamento (hora) 138 NF-es/hora Picos de Processamento 1º Pico 07:00 até as 09:00 Motivo: Faturamento para liberação de caminhões 2º Pico 14:00 até as 15:00 Motivo: Transferências entre centros produtivos Momento sem processamento 18:00 até as 06:0022
  23. 23. Indicadores voltados ao Negócio Teste de Carga Principal objetivo: Identificar o comportamento do ambiente de acordo com as diversas cargas possíveis de maneira isolada Foco em indicadores de desempenho x hardware Identificação destes indicadores com uma determinada carga do aplicativo23
  24. 24. Indicadores voltados ao Negócio Teste de Carga24
  25. 25. Indicadores voltados ao Negócio Teste de Carga25
  26. 26. Indicadores voltados ao Negócio Teste de Stress Principal objetivo: Identificar o comportamento do ambiente de quando aplicada a carga acima da máxima x tempo A carga aplicada é identificada pelo teste de carga Foco em indicadores de desempenho x hardware Identificação destes com relação ao tempo com uma determinada carga do aplicativo Identificação de falhas e recuperação do sistema26
  27. 27. Indicadores voltados ao Negócio Teste de Stress27
  28. 28. Demonstração Jmeter + Perfmon Visual Studio 2010 Ultimate28
  29. 29. Perguntas???29

×