JMeter HTTP Sampler - запрос GET успешен только на домашней странице, любая другая страница возвращает 404 - PullRequest
1 голос
/ 28 января 2020

Описание

При использовании сэмплера HTTP-запросов в JMeter для определенного c веб-сайта я не могу выбрать любую страницу, кроме домашней страницы, http://<website>.com/. Если я пытаюсь получить доступ к какой-либо другой странице, скажем, http://<website>.com/about-us, я получаю ответ 404.

В сэмплере запроса есть два поля Server Name or IP и Path, и я знаю, что это общее ошибка, чтобы заполнить их неправильно. Я пробовал несколько разных способов ввести их правильно. IP с и без about-us части, с и без / et c.

Я пробовал это с другими сайтами и не видел проблем, поэтому я предполагаю, что есть что-то определенное c на сайт, который я тестирую.

Вот где я запутался в этом. Когда вы смотрите в View Result Tree, вы видите под Request > Request Body правильно введенный запрос на получение. Если я ввожу это в свой браузер или выполняю запрос на получение вручную по этому URL-адресу https://reqbin.com/, он просто отлично выбирает сайт.

Единственное расхождение, которое я вижу между этим сайтом и другими веб-сайты, с которыми у меня нет этой проблемы, заключаются в том, что страница about page et c., не заканчивается на /. Если вы добавите обратную ссылку sh в конце URL-адреса, вы не сможете получить доступ к сайту.

Шаги для воспроизведения

  • Добавление сэмплера HTTP в JMeter
  • введите имя сервера под Server Name or IP, т.е. www.<website>.com
  • введите путь к Path, т.е. /about-us
  • запустите тест и просмотрите результат в View Result Tree

Ожидаемый результат

HTTP-ответ 200

Фактический результат

HTTP-ответ 404

Тело ответа

<code><!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8">
<title>Error</title>
</head>
<body>
<pre>Cannot GET /about-us

Заголовки ответа

HTTP/1.1 404 Not Found
X-Powered-By: Express
Content-Security-Policy: default-src 'self'
X-Content-Type-Options: nosniff
Content-Type: text/html; charset=utf-8
Content-Length: 147
Vary: Accept-Encoding
Date: Tue, 28 Jan 2020 17:11:37 GMT
Connection: keep-alive

Ключевые примечания

  • Тело запроса GET http://<website>.com/about-us является действительной ссылкой, если она размещена в браузере или если используется с https://reqbin.com/
  • страница about не заканчивается на /, я не знаю, имеет ли это отношение

1 Ответ

0 голосов
/ 29 января 2020

Если вы не поделитесь с нами именем хоста сайта, мы не можем помочь, пока я могу только предложить:

  1. Рассмотрите возможность создания плана тестирования с использованием HTTP (S) Test Script Recorder или JMeter Chrome Расширение , оба подхода должны создать соответствующий HTTP-запрос сэмплера (ов), так как построение плана тестирования вручную открывает двери для ошибок (т.е. ваша конфигурация может содержать не -печатаемые символы, такие как пробел или разрывы строк)
  2. Увеличение регистрирует многословие для компонентов протокола HTTP путем добавления следующей строки в log4j2. xml файл:

    <Logger name="org.apache.jmeter.protocol.http" level="debug" />
    

    и, если необходимо,

    <Logger name="org.apache.http" level="debug" />
    

    , таким образом, вы наверняка увидите, какие запросы отправляет JMeter

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...