Editando padrões de carga para modelar atividades de usuário virtual
As propriedades do padrão de carga especificam como a carga de usuário simulada é ajustada durante um teste de carga. O Visual Studio Enterprise fornece três padrões de carga interna: constante, por etapa e baseado em objetivo. Escolha o padrão de carregamento e ajuste as propriedades até os níveis apropriados para suas metas de teste de carga.
O padrão de carga é um componente de um cenário. Os cenários, com os padrões de carga definidos, compõem um teste de carga.
Dica
Em todos os padrões de carga, a carga gerada pelo Team Test é uma carga simulada gerada por usuários virtuais.
Requisitos
- O Visual Studio Enterprise
Padrões de carga
Constante
O padrão de carga constante é usado para especificar uma carga de usuário não alterada durante o teste de carga. Por exemplo, ao executar um smoke test em um aplicativo Web, você talvez queira definir uma carga leve, constante, de 10 usuários.
Considerações sobre o padrão de carga constante
Um padrão de carga de constante é usado para executar a mesma carga de usuário durante a execução de um teste de carga. Tome cuidado ao usar um padrão de carga constante com uma contagem de usuários alta; isso pode gerar uma demanda ilógica e irreal sobre seus servidores no início do teste de carga. Por exemplo, se o seu teste de carga contiver um teste na Web que comece com uma solicitação para uma página inicial e você configurar o teste de carga com uma carga constante de 1.000 usuários, o teste de carga enviará as 1.000 primeiras solicitações para a página inicial o mais rápido possível. Essa pode não ser uma simulação realista de acesso do mundo real ao seu site. Para atenuar isso, considere usar uma etapa de padrão de carga que aumente gradualmente até 1.000 usuários, ou especifique um período de aquecimento nas configurações de execução de testes de carga. Se um período de aquecimento for especificado, o teste de carga aumentará automaticamente a carga gradualmente durante o período de aquecimento. Para obter mais informações, consulte Configurando atrasos de início do cenário.
Etapa
O padrão de carga em etapa é usado para especificar uma carga do usuário que aumenta com o tempo até uma carga de usuário máxima definida. Para cargas em etapa, você especifica Contagem Inicial de Usuários, Contagem Máxima de Usuários, Duração da Etapa (Segundos) e Contagem de Usuário em Etapas.
Por exemplo uma carga por etapa com um usuário inicial contagem, contagem máxima de usuários de 100, duração da etapa (segundos) de 10 e um Step User Count 1 cria um padrão de carga de usuário que inicia em 1, aumenta em 1 a cada 10 segundos até alcançar 100 usuários.
Dica
Se a duração total do teste for menor que o tempo necessário para passar à carga de usuário máxima, o teste irá parar depois da duração decorrida e não alcançará o destino Contagem Máxima de Usuários.
Você pode usar a meta da etapa para aumentar a carga até o servidor atingir um ponto em que o desempenho diminui significativamente. À medida que a carga aumentar, o servidor acabará ficando sem recursos. A carga em etapa é uma boa maneira de determinar o número de usuários em que ela ocorre. Com a carga em etapa, você também precisa monitorar recursos do agente atentamente para ter certeza de que os agentes possam gerar a carga desejada.
Em geral, você deve realizar várias execuções com diferentes durações de etapa e contas de usuário em etapa de forma que possa obter boas medidas para uma determinada carga. Geralmente, as cargas mostram um pico inicial para cada etapa à medida que os usuários são adicionados. Manter a carga nessa taxa permite medir o desempenho do sistema depois que o sistema se recupera do pico inicial.
Considerações sobre o padrão de carga em etapa
O padrão de carga em pode ser usado para aumentar a carga no servidor ou nos servidores à medida que o teste de carga é executado de modo que você possa ver como o desempenho varia à medida que a carga de usuários aumenta. Por exemplo, para ver como será o desempenho do seu servidor ou dos servidores à medida que a carga de usuário aumenta para 2.000 usuários, você pode executar um teste de carga de 10 horas usando um padrão de carga em etapa com as seguintes propriedades:
Contagem inicial do usuários: 100
Contagem máxima de usuários: 2.000
Duração da etapa (segundos): 1.800
Tempo de rampa da etapa (segundos): 20
Contagem de usuários em etapas: 100
Essas configurações executam o teste de carga durante 30 minutos (1.800 segundos) em cargas de 100, 200, 300 e até 2.000 usuários. A propriedade Tempo de Rampa de Etapa deve ser mencionada, porque é única dessas propriedades não disponível para seleção no Novo Assistente de Teste de Carga. Essa propriedade permite que o aumento de uma etapa para a seguinte (por exemplo, de 100 para 200 usuários) ocorra gradualmente, e não de imediato. No exemplo, a carga de usuário seria aumentada de 100 para 200 usuários durante um período de 20 segundos (um aumento de cinco usuários por segundo). Para obter mais informações, consulte Como especificar a propriedade de tempo de rampa de etapa para um padrão de carga de etapa.
Baseado em metas
Um padrão de carga baseado em metas se assemelha ao padrão em etapa, mas ajusta a carga de usuário com base nos limites do contador de desempenho em comparação com os ajustes de carga de usuário periódicos. As cargas baseadas em meta são úteis para várias finalidades diferentes:
Maximizando saída dos agentes: meça a métrica limitadora principal no agente para maximizar a saída dos agentes. Normalmente, ela é CPU; porém, também pode ser memória.
Atingindo certo nível de recurso de destino, normalmente CPU, no servidor de destino, e medindo a produtividade nesse nível. Isso permite fazer comparações de execução a execução de produtividade dado um nível consistente de uso de recursos no servidor.
Atingindo um nível de produtividade de destino no servidor.
Na tabela a seguir, um exemplo mostra um padrão baseado em meta com as seguintes configurações de propriedades:
Grupo de propriedades |
Propriedade |
Valor |
---|---|---|
Contador de desempenho |
Categoria |
Processor |
Contador de desempenho |
Computador |
ContosoServer1 |
Contador de desempenho |
Contador |
% de Tempo do Processador |
Contador de desempenho |
Instância |
_Total |
Intervalo-alvo para o contador de desempenho |
Alto nível |
90 |
Intervalo-alvo para o contador de desempenho |
Baixo nível |
70 |
Limites de contagem de usuários |
Contagem inicial de usuários |
1 |
Limites de contagem de usuários |
Contagem máxima de usuários |
100 |
Limites de contagem de usuários |
Decremento máximo da contagem de usuários |
5 |
Limites de contagem de usuários |
Incremento máximo da contagem de usuários |
5 |
Limites de contagem de usuários |
Contagem mínima de usuários |
1 |
Essas configurações fazem o Analisador de testes de carga ajustar a carga de usuário entre 1 e 100 durante uma execução de teste de forma que o Contador para % de tempo do processador do WebServer01 fique entre 70% e 90%.
O tamanho de cada ajuste de carga de usuário é determinado por Maximum User Count Increment e Maximum User Count Decrement configurações. Os limites de contagem do usuário são definidos pelas propriedades Contagem Máxima de Usuários e Contagem Mínima de Usuários.
Considerações sobre o padrão de carga baseado em meta
Um padrão de carga baseado em meta é útil quando você deseja determinar o número de usuários compatível com seu sistema antes de atingir certo nível de utilização de recursos. Essa opção funciona melhor quando você já identificou o recurso limitador (ou seja, o afunilamento) no seu sistema.
Por exemplo, suponhamos que você saiba que o recurso limitador em seu sistema é a CPU no servidor de banco de dados e queira ver quantos usuários podem ser compatíveis quando a CPU no servidor de banco de dados está aproximadamente 75 por cento ocupada. Você poderia usar um padrão de carga baseado em meta que tem o objetivo de manter o valor do contador de desempenho "% de tempo do processador" entre 70 e 80 por cento.
Algo a ser observado é se algum outro recurso está limitando a produtividade do sistema. Esses recursos podem fazer a meta especificada pelo padrão de carga baseado em meta jamais ser alcançada. Além disso, a carga de usuário continuará crescendo até o valor especificado para a Contagem Máxima de Usuários ser atingido. Como essa não costuma ser a carga desejada, tome cuidado na escolha do contador de desempenho no padrão de carga baseado em meta.
Tarefas
Tarefas |
Tópicos associados |
---|---|
Especificando o padrão de carga inicial para o teste de carga: ao criar um teste de carga usando o Novo Assistente de Teste de Carga, você seleciona um padrão de carga. |
|
Editando o padrão de carga para o teste de carga: depois de criar o teste de carga, você poderá editar o padrão de carga no Editor de testes de carga. |
|
Especificando se os usuários virtuais no cenário do teste de carga devem incluir dados de cache na Web: você pode alterar a propriedade Porcentagem de novos usuários para afetar a maneira como o teste de carga simula o armazenamento em cache na Web que seria executado por um navegador da Web para os usuários virtuais. |
|
Especificando o tempo de rampa de etapa para um padrão de carga em etapa: a propriedade Tempo de Rampa de Etapa permite que o aumento de uma etapa para a próxima (por exemplo, de 100 para 200 usuários) ocorra gradativamente, e não de imediato. |
Alterando o padrão de carga
Depois de criar seu teste de carga com o Novo Assistente de Teste de Carga, você poderá usar o Editor de testes de carga para alterar as propriedades do padrão de carga associadas a um cenário para níveis que atendam às suas necessidades de teste.
Dica
Para obter uma lista completa de propriedades de cenário de teste de carga e suas descrições, consulte Carregar propriedades do cenário de teste.
Um padrão de carga especifica o número de usuários virtuais ativos durante um teste de carga e a taxa em que os novos usuários são adicionados. Você pode escolher um dos três padrões disponíveis: padrão em etapa, constante e baseado em meta. Para obter mais informações, consulte especificando o número de usuários virtuais com padrões de carga em um cenário de teste de carga.
Dica
Você também pode alterar as propriedades de carga programaticamente usando um plug-in de teste de carga.Para obter mais informações, consulte Como criar um plug-in de teste de carga.
Para alterar o padrão de carga
Abra um teste de carga.
No Editor de testes de carga, na pasta Cenários, expanda o cenário cujo padrão de carga você deseja editar e escolha o padrão de carga do cenário.
Dica
A expressão do nó do padrão de carga, como ele é exibido na árvore de cenário do teste de carga, reflete o perfil de carga que você escolheu ao criar o teste de carga.Ela pode ser Perfil de Carga Constante ou Perfil da Carga em Etapa.
Pressione F4 para exibir a janela Propriedades.
As categorias Padrão de Carga e Parâmetros são exibidas na janela Propriedades.
(Opcional) Altere propriedade Padrão na categoria Padrão de Carga.
As opções escolhidas para a propriedade Padrão são Etapa, Constante e Baseadas em Meta. Para obter mais informações sobre os tipos de padrão de carga, consulte especificando o número de usuários virtuais com padrões de carga em um cenário de teste de carga.
(Opcional) No parâmetros categoria, altere os valores.
Dica
Os valores que você pode definir para parâmetros diferem de acordo com o valor que foi selecionado para padrão propriedade.
Depois de alterar as propriedades, escolha Salvar no menu Arquivo. Você pode executar o teste de carga com o novo padrão de carga.
Recursos externos
Orientação
Teste para entrega contínua com o Visual Studio 2012 – capítulo 6: uma caixa de ferramentas de teste
Consulte também
Criando e editando testes de carga
Editando cenários de teste de carga usando o Editor de Teste de Carga
2e93860a-a67a-43a2-9b0a-5ec65ca6e7a7#CreatingLoadTestsUsingWizardStep2_1
Como especificar a porcentagem de usuários virtuais que usam dados de cache da Web
Como especificar a propriedade de tempo de rampa de etapa para um padrão de carga de etapa