Usuários reais fazem pausas entre as ações — eles leem uma página, preenchem um formulário ou decidem onde clicar em seguida. Um comando de think time insere essas pausas no seu cenário de teste de estresse para que os usuários virtuais se comportem de maneira realista, em vez de disparar requisições na velocidade da máquina.
O PTS oferece suporte a três tipos de timer:
|
Tipo de timer |
Comportamento |
Mais indicado para |
|
Fixed |
Aguarda exatamente N milissegundos |
Atrasos previsíveis e repetíveis |
|
Uniform Distribution |
Aguarda uma duração aleatória dentro de um intervalo definido; todos os valores no intervalo têm a mesma probabilidade |
Comportamento do usuário variado, mas delimitado |
|
Normal Distribution |
Aguarda uma duração aleatória agrupada em torno de um valor central (Gaussiana) |
Modelagem realista em que a maioria dos atrasos fica próxima de uma média |
Adicionar um comando de think time a um cenário
Faça logon no console do PTS. Escolha Performance Test > Create Scenario e clique em PTS.
Na aba Scenario Settings da página Create PTS Scenario, configure basic request information para um nó HTTP.
Clique na seta suspensa à direita de Add Instruction e selecione Think Time.
Na linha Think Time, clique na seta suspensa e configure os parâmetros Timer Type e Latency. Consulte as seções a seguir para obter detalhes sobre cada tipo de timer.
Tipos de timer
Fixed
A requisição pausa por exatamente N milissegundos antes de continuar. N corresponde ao valor definido no campo Latency.
Por exemplo, definir a latência como 3000 faz com que cada usuário virtual aguarde exatamente 3 segundos entre a requisição anterior e a próxima ação.
Uniform Distribution
A requisição pausa por uma duração aleatória distribuída uniformemente no intervalo [Delay offset, Delay offset + Changeable span]. Todos os valores nesse intervalo têm a mesma probabilidade de ocorrência.
|
Parâmetro |
Descrição |
|
Delay offset |
Duração mínima da pausa (em milissegundos) |
|
Changeable span |
Tamanho do intervalo aleatório adicionado ao delay offset |
Fórmula do atraso: actual delay = random value in [Delay offset, Delay offset + Changeable span]
Por exemplo, se você definir Delay offset como 3 e Changeable span como 2, a duração da pausa será selecionada aleatoriamente entre 3, 4 ou 5 milissegundos para cada requisição.
Normal Distribution
A requisição pausa por uma duração aleatória que segue uma distribuição normal (distribuição Gaussiana). Configure dois parâmetros:
|
Parâmetro |
Descrição |
|
Mean (mu) |
Valor central em torno do qual a maioria das durações de pausa se agrupa |
|
Variance (sigma ao quadrado) |
Controla a dispersão. Uma variância menor mantém as durações fortemente agrupadas em torno da média. Uma variância maior produz um intervalo mais amplo de durações. |
Por exemplo, definir uma média de 5000 com uma variância pequena gera pausas concentradas próximas de 5 segundos, enquanto uma variância maior resulta em pausas distribuídas de forma mais ampla acima e abaixo de 5 segundos.
Escolher o tipo de timer adequado
|
Cenário |
Tipo de timer recomendado |
Exemplo |
|
Temporização consistente e reproduzível entre requisições |
Fixed |
Benchmarking de um endpoint específico sob uma cadência controlada |
|
Atrasos aleatórios dentro de um intervalo estrito |
Uniform Distribution |
Simulação de usuários que levam entre 2 e 5 segundos para ler uma mensagem de confirmação |
|
Atrasos agrupados em torno de um valor típico com variação natural |
Normal Distribution |
Modelagem do comportamento real do usuário, em que a maioria das pausas fica próxima de um tempo de reflexão médio |