O que é uma afirmação?
A ajuda de asserção verifica se o servidor em teste retorna os resultados esperados .
Tipos de afirmações
A seguir estão algumas afirmações comumente usadas no JMeter:
- Asserção de Resposta
- Asserção de duração
- Asserção de tamanho
- Asserção XML
- Asserção HTML
- Etapas para usar a declaração de resposta
Asserção de Resposta
A asserção de resposta permite adicionar cadeias de caracteres padrão para serem comparadas com vários campos da resposta do servidor.
Por exemplo, você envia uma solicitação do usuário ao site http://www.google.com e obtém a resposta do servidor. Você pode usar a declaração de resposta para verificar se a resposta do servidor contém a string de padrão esperada (por exemplo, "OK").
Asserção de duração
A Asserção de Duração testa se cada resposta do servidor foi recebida em um determinado período de tempo. Qualquer resposta que demore mais do que um determinado número de milissegundos (especificado pelo usuário) é marcada como uma resposta com falha.
Por exemplo, uma solicitação do usuário é enviada para www.google.com por JMeter e obtém uma resposta dentro do tempo esperado de 5 ms, em seguida, passa no caso de teste, caso contrário, o caso de teste falhou.
Asserção de tamanho
A Asserção de Tamanho testa se cada resposta do servidor contém o número esperado de bytes. Você pode especificar que o tamanho seja igual, maior que, menor ou diferente de um determinado número de bytes.
O JMeter envia uma solicitação do usuário para www.google.com e obtém o pacote de resposta com tamanho menor do que o byte esperado de 5.000 bytes ao passar no caso de teste. Caso contrário, o caso de teste falhou.
Asserção XML
A asserção XML testa se os dados de resposta consistem em um documento XML formalmente correto.
Asserção HTML
A asserção HTML permite que o usuário verifique a sintaxe HTML dos dados de resposta. Isso significa que os dados de resposta devem atender à sintaxe HTML.
Etapas para usar a declaração de resposta
Continuaremos com o script que desenvolvemos no tutorial anterior.
Neste teste, estamos usando a declaração de resposta para comparar o pacote de resposta de www.google.com que corresponde à sua string esperada.
Aqui está o roteiro para este teste:
O painel de controle de asserção de resposta permite adicionar strings de padrão para serem comparadas a vários campos da resposta.
Etapa 1) Adicionar Asserção de Resposta
Clique com o botão direito em Thread Group -> Adicionar -> Assertions -> Response Assertion
O painel de asserção de resposta é exibido como a figura abaixo:
Etapa 2) Adicionar padrão para testar
Quando você envia uma solicitação ao servidor do Google, ele pode retornar algum código de resposta conforme abaixo:
- 404 : Erro de servidor
- 200 : Servidor OK
- 302 : O servidor da Web redireciona para outras páginas. Isso geralmente acontece quando você acessa google.com de fora dos EUA. O Google redireciona para o site específico do país. Conforme mostrado abaixo, google.com redireciona para google.co.in para usuários indianos.
Suponha que você deseja verificar se o código de respostas do servidor da web do google.com contém o padrão 302,
No campo de resposta a testar , escolha o código de resposta,
No Painel de Asserção de Resposta, clique em Adicionar -> uma nova tela de entrada em branco -> insira 302 em Padrão para Teste.
Etapa 3) Adicionar resultados de asserção
Clique com o botão direito em Thread Group, Add -> Listener -> Assertion Results
Etapa 4) Execute seu teste
Clique em Thread Group -> Assertion Result
Quando estiver pronto para executar um teste, clique no botão Executar na barra de menus ou na tecla de atalho Ctrl + R.
O resultado do teste será exibido no painel Resultados da asserção. Se o código de resposta do servidor do Google contiver o padrão 302 , o caso de teste será aprovado. Você verá a mensagem exibida da seguinte forma:
Agora, de volta ao painel de asserção de resposta, você altera o padrão para testar de 302 a 500.
Como o código de resposta do servidor do Google não contém esse padrão, você verá o caso de teste com falha como a seguir:
Solução de problemas:
Se você enfrentar o problema ao executar os cenários acima ... faça o seguinte:
- Verifique se você está se conectando à Internet por meio de um proxy. Se sim, remova o proxy.
- Abra uma nova instância do JMeter
- Abra o AssertionTestPlan.jmx no JMeter
- Clique em Thread Group -> Assertion Result
- Execute o teste