Relatório Agregado
- Grupo de encadeamentos clique com o botão direito →> ouvinte -> relatório agregado
- Escopo
- Grave todos os dados em um arquivo -> nome do arquivo, log de erros apenas, configuração
- Exibição de resultados -> Interpretação de dados, ao projetar cenários de desempenho, falarei novamente
No ouvinte, todos os componentes, função de gravação de arquivo e conteúdo de gravação são os mesmos
No listener, apenas o log de erros é usado para visualizar os componentes da árvore de resultados. Após a verificação, apenas a resposta de erro será exibida
Função de configuração de log, não é possível gravar dados de variáveis dinâmicas
Documentos de interface: 1, texto docx, pdf
2. documento api === documento api aberto, interface de terceiros
3 、 arrogância
A empresa não fornece documentação de interface, o que devo fazer? == Capturar
Curso: Interface aberta do servidor, desempenho da interface, teste de desempenho do servidor
fiddler, Charles, wireshark, F12, httpwatch == captura de pacotes front-end (captura de pacotes do lado do usuário)
Captura de pacotes do lado do servidor? === captura de pacote de comando tcpdump
Necessita de privilégios de root, comando de instalação: yum install tcpdump -y
Comando de captura: tcpdump -i ens33 -s0 -w deac.cap
=========== Método de gravação para escrever o script ===========
servidor proxy http
Gravador de script de teste HTTP (S) Gravação de proxy HTTP
- Servidor proxy
- degrau
1. Crie um grupo de discussão primeiro
2. Plano de teste> clique com o botão direito> componentes não testados> servidor proxy http
3. Modifique o controlador de destino para o nome adicionado ao grupo de encadeamentos na etapa 1.
----- solicitar filtro de filtragem
4. Comece
Use um proxy para navegar na Internet e preencha o ip e porta no navegador. Este ip e porta são o ip e a porta do servidor do servidor proxy
A diferença entre servidor proxy e proxy
O grupo marido e mulher proxy é um servidor que fornece recursos de proxy de rede, tem seu próprio IP e porta para serviços externos
Agente: Usuário
====== Otimização de script Jmeter ======
Variabilidade
- Variável definida pelo usuário UserDefinedVariable
> Clique com o botão direito para adicionar grupo de discussão -> Elemento de configuração -> Variável definida pelo usuário
- 1. Regras de nomenclatura de variáveis: letras, números, sublinhados, diferenciando maiúsculas e minúsculas (regras java)
- 2. Referência de variável: $ {}
====== Variáveis definidas pelo usuário vs parâmetros do usuário ====== 100% de controle
Qual é a prioridade do pré-processador e do amostrador?
1. Variáveis definidas pelo usuário, obter o valor uma vez ao iniciar a operação e não obter mais o valor durante a operação
Parâmetros do usuário, obtenha o valor uma vez na inicialização e obtenha o valor dinamicamente durante a operação
2. Variáveis definidas pelo usuário, variáveis globais - podem ser usadas entre vários grupos de threads
Parâmetros do usuário UserParameter, variáveis locais - só podem ser usados no grupo de threads atual
O pré-processador é executado primeiro, depois o amostrador, então os parâmetros do usuário serão executados antes do amostrador
Parâmetros do usuário e variáveis definidas pelo usuário, quando usados como variáveis, têm a mesma aparência
Parâmetros do usuário: 3 pessoas solicitam ao mesmo tempo, o número de telefone é alterado, 1 pessoa liga 3 vezes, o número de telefone também muda
====== Entrevista, para registrar 10.000 usuários, use esses 10.000 usuários para efetuar login e realizar o teste de desempenho da interface?
(Use os parâmetros do usuário, verifique cada iteração para atualizar uma vez)
>
Ferramentas de função> Assistente de função
- função de contador _counter ()
- função de criptografia _digest () (MD5)
- _intSum () soma inteira
- _P () 、
- _property () Obter função de propriedade
- _setProperty () definir propriedade
- _threadNum obtém o número de threads
- _time () Obter função de hora atual
> s {_time (aaaa-MM-dd HH.mm:ss:SSs,)}
- timeShift () time shift
> $ {_ timeShift (aaaa-MM-dd HH.mm:ss:sss,,p2dt4h6m10.234s ,,)}
- _RandomData () data aleatória
> $ {_ RandomDate (aaaaMMdd, 20201018,20201028 ,,)}
- _dateTimeCovert () timestamp para a hora local
> $ {_ dateTimeConvert (1599723255000,, aaaaMMdd HHmmss,)}