Quando usada para testes de interface , a última interface geralmente precisa usar o resultado retornado pela interface anterior. Como obter o valor do resultado da solicitação anterior e aplicá-lo à última interface? Vamos dar um exemplo de login para ilustrar como obtê-lo .
1. Abra o jmeter , crie um novo plano de teste , crie um novo grupo de threads no plano de teste e crie uma nova solicitação http de login, conforme mostrado na figura:
2. Confira os resultados retornados fazendo login:
3. A interface de recarga só pode ser operada após o login. Neste momento, você pode usar o método cookie para verificar se o usuário fez login e adicionar um gerenciador de cookies à interface de recarga:
O sinal aqui é o valor do sinal retornado pela interface de login anterior.
4. Crie um novo pós-processador na solicitação de login e extraia o valor do resultado de retorno:
5. Visualize os resultados da execução da interface:
Resumo: O acima é a implementação associada do jmeter. Se houver outras interfaces que exijam os resultados da solicitação anterior, você também pode adicionar um pós-processador para extrair variáveis e atuar na última interface para obter alterações dinâmicas nos parâmetros.
Exemplos de expressões regulares:
1. Extraia uma única string:
Suponha que você queira corresponder a seguinte parte da página da Web: name = "file" value = "readme.txt"> e extrair readme.txt. Uma expressão regular adequada: nome = “arquivo” valor = “(.+?)">.
(): Encapsula a string correspondente a ser retornada.
.: Corresponde a qualquer string única.
+: uma ou mais vezes.
?: Não seja muito ganancioso, pare depois de encontrar a primeira partida.
2. Extraia várias strings:
Suponha que você queira corresponder a seguinte parte da página da Web: name = "file.name" value = "readme.txt"> e extrair file.name e readme.txt. Uma expressão regular adequada: nome = “(.+?)” valor = “(.+?)”. Isso criará 2 grupos, um para 1 11 e 2 22
por exemplo:
Nome de referência: MYREF
Modelo: 1 112 22
Serão definidos os valores das seguintes variáveis:
MYREF: file.namereadme.txt
MYREF_g0: name = "file.name" value = "readme.txt"
MYREF_g1: file.name
MYREF_g2: readme.txt
Onde for necessária referência, você pode usar: ${MYREF}, ${MYREF_g1.
Quando há dependências entre solicitações, por exemplo, o parâmetro de entrada de uma solicitação são os dados retornados por outra solicitação, então o processamento de associação é necessário. Jmeter pode usar o "extrator de expressão regular" no "pós-processador" para lidar com associações.
associação simples
Por exemplo, ao visitar a página inicial do Baidu, há um título nos dados de resposta.
Só quero fazer referência a este título em outras solicitações. Adicione um extrator de expressão regular e defina-o da seguinte maneira:
Adicione uma solicitação de associação para verificar a associação:
Após a execução, vemos que a associação foi bem-sucedida
Uma associação mais complexa, como assumir vários valores no resultado da expressão regular
Por exemplo, os dados de resposta de uma solicitação são os seguintes:
Tentamos extrair os quatro dados de 0,0, 84956,0, 1019, 3, adicionar o extrator de expressão regular e fazer as seguintes configurações
Nome de referência: O nome de referência e o método de referência não precisam de mais explicações, são quase iguais à parametrização de variáveis.
Expressões regulares: Todas as partes a serem citadas são substituídas por parênteses. Para as expressões específicas entre parênteses, você pode verificar o conhecimento relacionado às expressões regulares separadamente.
Modelo: Representa um estilo referenciado a partir de um resultado de expressão regular. Na verdade, o resultado é um conjunto, não um. 0 00 representa todo o conjunto de resultados, 1 11 representa o primeiro resultado deste conjunto e assim por diante;
1 112 22 representa o primeiro e o segundo resultados em um conjunto de expressões regulares.Os dois resultados estão próximos um do outro, sem qualquer intervalo entre eles;
3 33, 4 44 representa o 3º e o 4º resultados em um conjunto de expressões regulares.Há uma vírgula conectando os dois resultados.
Número de correspondência: 0 representa aleatório no grupo de resultados de expressões regulares, 1 representa todos.
Valor padrão: Exibe as informações passadas quando a referência está incorreta e escreve um ERRO.
Depois de configurar o extrator de expressões regulares conforme acima, podemos adicionar uma solicitação de verificação associada, como segue:
Na verdade, myref_g0, myref_g1...myref_g4 são os grupos de resultados da expressão regular, e myref é o resultado extraído pelo controle do modelo. Para observar mais claramente o grupo de resultados da expressão regular, muitos parâmetros são adicionados a a solicitação de verificação. Na verdade, para usá-lo, basta usar um myref e combiná-lo com o modelo.
myref_g0={“aluguel”:0,0,“preço”:84956,0,“totalprice”:1019,“roomType”:3} myref_g1
=0,0
myref_g2=84956,0
myref_g3=1019
myref_g4=3
1.Modelo 0 00
Por fim, gostaria de agradecer a todos que lêem meu artigo com atenção. A reciprocidade é sempre necessária. Embora não seja algo muito valioso, se você puder usá-lo, poderá pegá-lo diretamente:
Como obter documentos:
Este documento deve ser o armazém de preparação mais abrangente e completo para amigos que desejam se envolver em [teste de software]. Este armazém também me acompanhou na jornada mais difícil. Espero que também possa ajudá-lo!