в моем проекте у меня есть JavaScript, отвечающий за отслеживание действий пользователя, чтобы оптимизировать макет страницы. Эти вызовы выполняются, когда пользователь что-то щелкает, включая ссылки, ведущие на другие страницы.
У меня весь процесс покрыт автоматизированными тестами, написанными на Java и основанными на Selenium Webdriver. Я использую прокси-сервер Browsermob для захвата запросов и проверки того, что правильные данные передаются службе отслеживания пользователей.
В определенных ситуациях запросы, попадающие в службу, не регистрируются прокси-сервером. Это происходит потому, что браузер переходит на следующую страницу до получения ответа от службы отслеживания. Запрос фактически попадает в пункт назначения, что я вижу по состоянию базы данных. Поскольку браузер не ждет ответов, прокси не замечает их, несмотря на ожидание по умолчанию 5 секунд, которое в данном случае просто игнорируется. Это происходит только время от времени, что приводит к ложноотрицательным результатам в моих отчетах об испытаниях.
Я не могу заставить браузер фактически ждать этих запросов, потому что я не хочу, чтобы отслеживание мешало пути пользователя. Что я хотел бы сделать, так это каким-то образом настроить прокси-сервер, чтобы он различал запросы, которые не были отправлены, и те, которые были отменены на полпути. Таким образом, я мог прикрепить эту информацию к своим отчетам.
Можно ли этого добиться с помощью прокси-сервера Browsermob? Возможно, какой-то другой инструмент справится с этой задачей лучше.