Popular em toda a rede, explicação detalhada do teste de interface Jmeter e teste de desempenho Jmeter (super detalhado)


prefácio

teste de interface Jmeter

1. Crie uma tarefa de teste
Adicione um grupo de threads, clique com o botão direito do mouse no plano de teste e clique em Add-"Thread (User)-"Thread Group no menu de atalho. A configuração do grupo de threads inclui principalmente três parâmetros: o número de threads, Ramp-Up e o número de ciclos.

D1

Número de threads: Defina o número de usuários virtuais. Um usuário virtual ocupa um processo ou thread. O número de threads é equivalente ao número de usuários virtuais.

Ramp-Up: O tempo de inicialização do número definido de threads, em segundos. Se o número de encadeamentos for 100 e o tempo de preparação for 20 segundos, serão necessários 20 segundos para iniciar 100 encadeamentos e uma média de 5 encadeamentos serão iniciados por segundo.

Número de loops: o número de solicitações enviadas por cada encadeamento. Se o número de threads for 100 e o número de loops for 2, cada thread enviará 2 solicitações e o número total de solicitações será 100*2=200 vezes.

Se a caixa de seleção "Para sempre" estiver marcada, todos os encadeamentos enviarão solicitações em um loop até que o botão Parar na barra de ferramentas seja clicado manualmente ou o tempo de execução do encadeamento definido termine.

Para o teste de interface desta vez, o valor padrão é 1.

2. Adicione a solicitação HTTP de get
Clique com o botão direito do mouse no grupo de linhas e clique em Add-"Sampler-"HTTP Request no menu de atalho.

D2

Protocolo: O protocolo ao enviar uma solicitação HTTP para o servidor de destino, que pode ser HTTP ou HTTPS, e o padrão é HTTP caso não seja preenchido.

IP e porta do servidor: digite o endereço do servidor de destino e o número da porta.
Codificação de conteúdo: O valor padrão é iso8859
Método: Selecione para o método de solicitação
Caminho: Insira o endereço de destino da solicitação
Parâmetro: Insira o valor do parâmetro da consulta

3.
O método de adição de solicitação pós-HTTP é o mesmo descrito acima, mas o método de solicitação é diferente. Desta vez, o POST é usado para transferir os parâmetros para o servidor e o endereço URL da solicitação POST.

D3

De acordo com o documento de interface fornecido pelo desenvolvimento, consulte a opção de parâmetro de entrada e insira-a.

4. Adicionar uma afirmação
Clique com o botão direito do mouse nas informações de consulta da conferência e adicione as informações da conferência, respectivamente, Add-"Assertion-"Response assertion
Desta vez, selecione o texto da resposta e insira os dados que precisam ser correspondidos.

D4

5. Adicione e visualize a árvore de resultados
Clique com o botão direito do mouse no projeto do sistema de lançamento, clique em Add-"Listener-" Visualize a árvore de resultados, após executar:

D5

Uma marca verde é exibida para sucesso e uma marca vermelha é exibida para falha. Você pode visualizar os dados retornados por cada caso de uso.

6. Adicione uma tabela para ver os resultados

D6

Você pode visualizar o consumo de tempo e tamanho de byte, status de resultado e informações de caso de uso com mais detalhes.

Teste de desempenho do Jmeter

Como o JMeter não oferece suporte à gravação suficientemente bem, o método comum agora é usar o Badboy para gravar, gerar scripts JMeter, abri-los com o JMeter e adicionar ouvintes para visualizar os resultados.

Clique duas vezes no ícone do software para abrir o badboy e você verá a seguinte interface:

D7

1. Inicie a gravação
Insira a URL do aplicativo da web que deseja gravar na barra de endereço (a parte emoldurada em vermelho na figura) e clique no botão de ponto vermelho para iniciar a gravação.

Após o início da gravação, você pode operar diretamente o aplicativo da web em teste no navegador integrado do Badboy (lado direito da interface principal) e todas as operações serão gravadas na janela de edição no lado esquerdo da interface principal: conforme mostrado em a figura abaixo

D8

script de exportação como jmeter

D9

O número de threads representa o número de usuários enviando requisições, e o Ramp-up period (em segundos) representa o intervalo de tempo total para cada requisição ocorrer, em segundos. Se o número de minhas solicitações for 5 e o parâmetro Ramp-up period (inseconds) for 10, o intervalo entre cada solicitação será 10/5, que é de 2 segundos.

Se o período de aceleração (em segundos) for definido como 0, isso significa solicitações simultâneas.

Por fim, desmarque a caixa de seleção do número de ciclos para "Forever" e digite 1. Esse valor informa ao JMeter quantas vezes repetir o teste. Se você inserir 1, o JMeter executará o teste apenas uma vez. Para executar seu plano de teste continuamente, marque a caixa de seleção "Para sempre".

Conforme mostrado na figura abaixo, simule o número de 1.000 usuários simultâneos para executar um teste de login.

D10

2. Adicionar monitoramento
Isso é usado principalmente para visualizar os resultados do teste, que podem ser exibidos em diferentes formas.

Aqui está um exemplo para adicionar um ouvinte: visualize os resultados em uma tabela, relatório agregado e thread de relatório gráfico Group->Add->Listener->Aggregate Report (relatório gráfico, visualize os resultados em uma tabela) conforme mostrado na figura a seguir:

D11

Após a execução do programa, você pode visualizar os resultados do teste correspondente. Aqui, o relatório a seguir é obtido tomando como exemplo a simultaneidade instantânea de 1000 grupos de threads:

D12

Os significados dos parâmetros no gráfico acima são os seguintes:

A contagem de amostras é o número total de solicitações enviadas ao servidor.
A amostra mais recente é um número que representa a hora em que o servidor respondeu à última solicitação.
Taxa de transferência é o número de solicitações que um servidor atende por minuto.
A média é o tempo total decorrido dividido pelo número de solicitações enviadas ao servidor.
O valor mediano é o número que representa o tempo abaixo do qual metade dos servidores respondeu e metade acima.
Skew representa a variação do tempo de resposta do servidor, a magnitude da medida de dispersão, ou seja, a distribuição dos dados.

Pode-se observar que o tempo médio de resposta é de 1.630 ms, a taxa de transferência é de 3.940,887/minuto e o valor mediano da resposta média é de 230 ms quando 1.000 pessoas estão simultâneas.

D13

O significado do gráfico é explicado a seguir:
Label: Indica o tipo de solicitação, como Http, FTP e outras solicitações.
#Samples: Ou seja, o número de amostras no relatório gráfico e o número total de amostras enviadas ao servidor.
Average: Ou seja, o tempo médio de resposta no relatório gráfico, que é o tempo total de execução dividido pelo número de requisições enviadas ao servidor.

Mediana: ou seja, o valor mediano de 50% do tempo de resposta do usuário no relatório gráfico, metade do tempo de resposta do servidor é menor que esse valor e a outra metade é maior que esse valor.
Linha 90%: Significa que o tempo de resposta de 90% das requisições é menor que o valor obtido, ou seja, o tempo de resposta de 90% dos usuários.

Min: É um número que representa o tempo, e é o tempo mínimo para o servidor responder.
Max: É um número que representa o tempo, que é o tempo máximo para o servidor responder.
Error%: a porcentagem de erro da solicitação. O número de solicitações com erros neste teste/número total de solicitações.
Throughput: Ou seja, o throughput no relatório gráfico, aqui é a quantidade de requisições processadas pelo servidor por unidade de tempo, preste atenção se é segundos ou minutos. Por padrão, significa o número de solicitações concluídas por segundo.

KB/s: A quantidade de dados recebidos do servidor por segundo.

Para obter dados corretos, o % de erro do relatório agregado deve ser 0,00%, caso contrário, significa que todos os usuários não passaram no teste. Aqui, o tempo médio de resposta é de 1630ms e o valor médio da resposta média é de 230ms.

Ocorreu um erro no erro da figura acima e os dados obtidos não são precisos. De acordo com o log e a tabela, a solicitação de conexão expirou no meio do processo e, dentro do tempo de resposta, o tempo de resposta para o número de recebidos pedidos é 0.

Como mostrado abaixo:

Q14

D16

Durante o teste, o tempo médio de resposta, o throughput e o número de conexões simultâneas são uma medida importante do nosso teste de desempenho, mas no teste, principalmente no relatório de agregação, a linha de 90% obtida é equivalente aos 90% propostos por o %Tempo de resposta do usuário. Este valor também é um grande valor de referência para nossa análise de teste de desempenho.

90% de tempo de resposta significa que entre as requisições enviadas, 90% do tempo de resposta do usuário é menor que o valor obtido. Também mostra que quando um sistema está em uso, 90% do tempo de resposta do usuário pode atingir este valor, então fornece um bom valor de referência para análise de desempenho do sistema.

Se o número de threads for alterado para 500 solicitações de conexão simultâneas, o erro não aparecerá como resultado e os dados de teste de desempenho obtidos serão precisos.

D15

Resumindo, é necessário otimizar continuamente os dados de comparação, aproximar-se do estado ótimo e determinar o número de cargas simultâneas.

A seguir está o diagrama de sistema de arquitetura de conhecimento de aprendizado de engenheiro de teste de software mais completo em 2023 que eu compilei

1. Da entrada ao domínio da programação Python

Adicione uma descrição da imagem

2. Combate real do projeto de automação da interface

Adicione uma descrição da imagem

3. Combate Real do Projeto de Automação Web

Adicione uma descrição da imagem

4. Combate real do projeto de automação de aplicativos

Adicione uma descrição da imagem

5. Currículo de fabricantes de primeira linha

Adicione uma descrição da imagem

6. Testar e desenvolver o sistema DevOps

Adicione uma descrição da imagem

7. Ferramentas de teste automatizadas comumente usadas

Adicione uma descrição da imagem

Oito, teste de desempenho do JMeter

Adicione uma descrição da imagem

9. Resumo (pequena surpresa no final)

Por mais difícil e perigosa que seja a frente, devemos embarcar na jornada com coragem e determinação. A luta não é apenas um estado, mas também uma crença.Somente perseverando e avançando podemos criar capítulos brilhantes no palco da vida e alcançar nossa própria lenda.

Cada esforço é uma oportunidade de mudar o meu destino.Por mais acidentada que seja a estrada, continuo acreditando firmemente que a persistência e a dedicação serão recompensadas. Acredite em sua capacidade, ouse desafiar o limite, escreva seu próprio capítulo glorioso com coragem e sabedoria e floresça infinitas flores de sonhos.

Superando espinhos e espinhos sem medo das adversidades, e escrevendo com brilhantismo no campo de batalha decisivo. A luta é uma jornada cheia de sonhos, só dando o seu melhor você pode superar a si mesmo e romper o caminho sinuoso da vida. Persevere, busque entusiasmo, esforce-se para criar seu próprio palco colorido e alcance a luz infinita em seu coração.

Acho que você gosta

Origin blog.csdn.net/csdnchengxi/article/details/132167931
Recomendado
Clasificación