Каратэ 1.5.1 Пользовательский httpclientFactory (PSK-TLS) работает в IntelliJ, но терпит неудачу с SslHandShakeExceptionJAVA

Программисты JAVA общаются здесь
Anonymous
Каратэ 1.5.1 Пользовательский httpclientFactory (PSK-TLS) работает в IntelliJ, но терпит неудачу с SslHandShakeException

Сообщение Anonymous »

`Недавно я обновил проект автоматизации тестов с каратэ 0.9.6 до каратэ 1.5.1. < /p>
В 0.9.6 я использовал каратэ-аапха для моей пользовательской реализации клиента HTTP. Поскольку каратэ-ааач больше не доступен в 1.5.x, мне пришлось явно реализовать мою собственную httpclientFactory для поддержки связи PSK-TLS. и
стандартный apachehttpclient в противном случае. < /p>

Проблема < /strong>
Когда я запускаю тесты из IntelliJ, все работает нормально, и все тестовые случаи проходят.

Код: Выделить всё

http call failed after 4 milliseconds for url: https://192.168.99.100:30058/Iotss
javax.net.ssl.SSLHandshakeException: Received fatal alert: handshake_failure
karate/tests/core/revoke-certificate-api.feature:158
< /code>

  Команда, которую я использую (сбой с sslhandshakeexception) < /strong> < /li>
< /ul>
java -cp ".;lib/test-automation-1.3.1-SNAPSHOT.jar;lib/karate-1.5.1.jar;lib/lib-signed/bcprov-jdk15on.jar;lib/lib-signed/bcpg-jdk15on.jar;lib/lib-signed/bcpkix-jdk15on.jar;lib/lib-signed/bctls-jdk15on.jar" \
-Dkarate.env=minikube \
-Dkarate.http.client.factory=com.thales.mcs.iot.ss.applet.ConditionalPskHttpClientFactory \
com.intuit.karate.Main \
--tags ~@draft,~@common,~@ignore,~@perf \
--output target \
karate/tests/core/
< /code>

  Intellij Runner (работает нормально) < /strong> < /li>
< /ul>
@Test
void testParallel() {
System.setProperty("karate.env", "minikube");
Results results = Runner.path("classpath:karate/tests/core/")
.tags("~@draft", "~@ignore")
.clientFactory(new ConditionalPskHttpClientFactory())
.parallel(2);
Assertions.assertEquals(0, results.getFailCount(), results.getErrorMessages());
}

*Почему рукопожатия PSK-TLS добились успеха в IntelliJ, но не сбои с SSLHandShakeException при запуске одинаковых файлов функций из командной строки? /> Я что-то не хватает в том, как в классе или каратэ.http.client.factory должно быть установлено при работе с CLI? bcpkix-jdk15on, bctls-jdk15on) на классе
прекрасно работает внутри Intellij с .clientFactory (new CondityPshttpClientFactory ())
не работает с javax.net.ssl.sslhakexexexexexexexception: Handshake_failure при запуске. />
Добавлена ​​каратэ.configure ('clientFactory', ...) в каратэ-config.js (но ClientFactory больше не поддерживается в каратэ 1.5.1). < /p>
< /li>
Добавлено свойство в блоке STATIC: < /p>

static {
System.setProperty("karate.http.client.factory",
- "com.thales.mcs.iot.ss.applet.ConditionalPskHttpClientFactory");
- }
< /code>

Прошеская настройка -dkarate.http.client.factory = ... через командную строку. < /li>
< /ol>

Подробнее здесь: https://stackoverflow.com/questions/797 ... fails-with

Вернуться в «JAVA»