Запись прокси JMeter https не работает
Я записываю сеанс https веб-приложения на основе JSF на JMeter, и он 'не работает.
Целевое приложение размещено на: AWS
Версия JMeter: 2.9 r1437961
Браузер: Chrome версия 29.0.1547.65
Джава: Java-версия "1.6.0_27"
Среда выполнения OpenJDK (IcedTea6 1.12.5) (6b27-1.12.5-0ubuntu0.12.04.1)
OpenJDK Server VM (сборка 20.0-b12, смешанный режим)
ОПЕРАЦИОННЫЕ СИСТЕМЫ: Ubuntu 12.04
Конфигурация прокси-сервера:
Порт: 8084
Целевой контроллер: План тестирования> Группа потоков
Захват HTTP-заголовков проверен.
Пример настроек HTTP:
Тип: не выбран. Следите за перенаправлениями и проверяйте использование KeepAlive.
Шаблоны URL для исключения:
1. Добавлены Предлагаемые Исключения
2.. * \. Jsf
Исключения, которые выдают (из JMeter.log):
ERROR - jmeter.protocol.http.proxy.Proxy: java.net.SocketException: Connection closed by remote host
at sun.security.ssl.SSLSocketImpl.checkWrite(SSLSocketImpl.java:1377)
at sun.security.ssl.AppOutputStream.write(AppOutputStream.java:62)
at java.io.BufferedOutputStream.flushBuffer(BufferedOutputStream.java:82)
at java.io.BufferedOutputStream.flush(BufferedOutputStream.java:140)
at org.apache.jmeter.protocol.http.proxy.Proxy.writeToClient(Proxy.java:404)
at org.apache.jmeter.protocol.http.proxy.Proxy.run(Proxy.java:218)
ERROR - jmeter.protocol.http.proxy.Proxy: Problem with SSL certificate? Ensure browser is set to accept the JMeter proxy cert: Connection closed by remote host java.net.SocketException: Connection closed by remote host
at sun.security.ssl.SSLSocketImpl.checkWrite(SSLSocketImpl.java:1377)
at sun.security.ssl.AppOutputStream.write(AppOutputStream.java:62)
at java.io.BufferedOutputStream.flushBuffer(BufferedOutputStream.java:82)
at java.io.BufferedOutputStream.flush(BufferedOutputStream.java:140)
at org.apache.jmeter.protocol.http.proxy.Proxy.writeToClient(Proxy.java:404)
at org.apache.jmeter.protocol.http.proxy.Proxy.run(Proxy.java:218)
Следующие шаги:
1. Установите прокси-сервер, указывающий на 8084.
2. Измените настройки прокси с chrome: установите https прокси на 8084.
3. Отключены все расширения Chrome и учетная запись Chrome.
4. Запустил прокси-сервер jmeter и нажалhttps://url/login
5. В браузере появится страница подтверждения сертификата. Между тем, jmeter.log показывает:
2013/09/11 13:16:30 INFO - jmeter.protocol.http.proxy.Daemon: Creating Daemon Socket on port: 8084
2013/09/11 13:16:30 INFO - jmeter.protocol.http.proxy.Daemon: Proxy up and running!
2013/09/11 13:22:39 INFO - jmeter.protocol.http.proxy.Proxy: Proxy will remove the headers: If-Modified-Since,If-None-Match,Host
2013/09/11 13:22:39 INFO - jmeter.protocol.http.proxy.Proxy: Opened Keystore file: /home/abhijeet/Automation_Dev/LoadAutomation/Jmeter/apache-jmeter-2.9/bin/proxyserver.jks
2013/09/11 13:22:39 INFO - jmeter.protocol.http.proxy.Proxy: KeyStore for SSL loaded OK and put host in map (clients4.google.com)
2013/09/11 13:22:39 INFO - jmeter.protocol.http.proxy.Proxy: Opened Keystore file: /home/abhijeet/Automation_Dev/LoadAutomation/Jmeter/apache-jmeter-2.9/bin/proxyserver.jks
2013/09/11 13:22:39 INFO - jmeter.protocol.http.proxy.Proxy: KeyStore for SSL loaded OK and put host in map (translate.googleapis.com)
2013/09/11 13:22:40 INFO - jmeter.protocol.http.sampler.HTTPHCAbstractImpl: Local host = abhijeet-desktop
2013/09/11 13:22:40 INFO - jmeter.protocol.http.sampler.HTTPHC4Impl: HTTP request retry count = 1
2013/09/11 13:22:40 INFO - jmeter.protocol.http.sampler.HTTPHC4Impl: Setting up HTTPS TrustAll scheme
2013/09/11 13:22:40 INFO - jmeter.protocol.http.proxy.FormCharSetFinder: Using htmlparser version: 2.0 (Release Build Sep 17, 2006)<br>
6. Группа потоков начинает показывать неизвестные запросы к этим доменам:
1. translate.googleapis.com
2. clients4.google.com
3. www.google.co.in
4. www.google.com
5. ssl.gstatic.com
6. safebrowsing.google.com
7. alt1-safebrowsing.google.com
8. clients4.google.com
9. www.gstatic.com
.
.
n all other requests going to the target application.
(Для каждого запроса выбрасываются вышеуказанные исключения)
Я считаю, что запросы домена Google выше записываются, потому что Chrome динамически ищет ключевые слова в Google, а я набираю строку URL в адресной строке. Но я нене хочу, чтобы эти запросы записывались в группу потоков.
Кроме того, я попробовал решения с этих страниц, но они неработать на меня:
Ссылка 1
Ссылка 2
Ссылка 3
Я неЯ не понимаю, почему JMeter не может использовать поддельный сертификат, который у него уже есть. Я проверил настройки SSL в Chrome и не смог найти никаких сертификатов JMeter. Нужна помощь!!