2016-01-28 2 views
0

Я использую Rest Assured для веб-сервисов. Я немного новичок в использовании SOAP.Rest Assured: использование Request Spec Builder для запроса SOAP дает ошибку тайм-аута соединения

Я создал запрос с использованием запроса Spec построитель, как это:

RestAssured.config().getSSLConfig().allowAllHostnames(); 
    RequestSpecBuilder builder = new RequestSpecBuilder(); 
    builder.setBody(getRequestBody()); 
    builder.setContentType(getContentType()); 
    builder.setRelaxedHTTPSValidation(); 
    builder.addHeaders(getHeaders()); 
    RequestSpecification specification = builder.build();   
    this.response =given().spec(specification).when().post(getEndPointUrl()); 

Но когда я запускаю тест, используя его, подключение истекло ошибка брошена.

Странно, что он работает правильно с запросом на отдых.

Для мыла, когда я запускаю свой запрос, используя синтаксис ниже: он отлично работает, и я получаю ответ.

this.response = given().request() 
      .headers(getHeaders()) 
      .contentType(getContentType()) 
      .body(getRequestBody()) 
      .when() 
      .post(getEndPointUrl()); 

Может кто-нибудь помочь мне понять, почему он не работает с Request Spec Builder и тайм-аутом.

Ошибка, что я получаю с помощью запроса Spec строитель с мылом наклеена ниже:

java.net.ConnectException: Connection timed out: connect 
at java.net.DualStackPlainSocketImpl.connect0(Native Method) 
at java.net.DualStackPlainSocketImpl.socketConnect(DualStackPlainSocketImpl.java:79) 
at java.net.AbstractPlainSocketImpl.doConnect(AbstractPlainSocketImpl.java:339) 
at java.net.AbstractPlainSocketImpl.connectToAddress(AbstractPlainSocketImpl.java:200) 
at java.net.AbstractPlainSocketImpl.connect(AbstractPlainSocketImpl.java:182) 
at java.net.PlainSocketImpl.connect(PlainSocketImpl.java:172) 
at java.net.SocksSocketImpl.connect(SocksSocketImpl.java:392) 
at java.net.Socket.connect(Socket.java:579) 
at org.apache.http.conn.scheme.PlainSocketFactory.connectSocket(PlainSocketFactory.java:117) 
at org.apache.http.impl.conn.DefaultClientConnectionOperator.openConnection(DefaultClientConnectionOperator.java:177) 
at org.apache.http.impl.conn.ManagedClientConnectionImpl.open(ManagedClientConnectionImpl.java:304) 
at org.apache.http.impl.client.DefaultRequestDirector.tryConnect(DefaultRequestDirector.java:611) 
at org.apache.http.impl.client.DefaultRequestDirector.execute(DefaultRequestDirector.java:446) 
at org.apache.http.impl.client.AbstractHttpClient.doExecute(AbstractHttpClient.java:863) 
at org.apache.http.impl.client.CloseableHttpClient.execute(CloseableHttpClient.java:82) 
at org.apache.http.impl.client.CloseableHttpClient.execute(CloseableHttpClient.java:57) 
at org.apache.http.client.HttpClient$execute$0.call(Unknown Source) 
at org.codehaus.groovy.runtime.callsite.CallSiteArray.defaultCall(CallSiteArray.java:48) 
at org.codehaus.groovy.runtime.callsite.AbstractCallSite.call(AbstractCallSite.java:113) 
at org.codehaus.groovy.runtime.callsite.AbstractCallSite.call(AbstractCallSite.java:133) 
at com.jayway.restassured.internal.RequestSpecificationImpl$RestAssuredHttpBuilder.doRequest(RequestSpecificationImpl.groovy:1807) 
at com.jayway.restassured.internal.http.HTTPBuilder.post(HTTPBuilder.java:341) 
at com.jayway.restassured.internal.http.HTTPBuilder$post$2.call(Unknown Source) 
at org.codehaus.groovy.runtime.callsite.CallSiteArray.defaultCall(CallSiteArray.java:48) 
at org.codehaus.groovy.runtime.callsite.AbstractCallSite.call(AbstractCallSite.java:113) 
at org.codehaus.groovy.runtime.callsite.AbstractCallSite.call(AbstractCallSite.java:133) 
at com.jayway.restassured.internal.RequestSpecificationImpl.sendRequest(RequestSpecificationImpl.groovy:1105) 
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) 
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57) 
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) 
at java.lang.reflect.Method.invoke(Method.java:606) 
at org.codehaus.groovy.reflection.CachedMethod.invoke(CachedMethod.java:93) 
at groovy.lang.MetaMethod.doMethodInvoke(MetaMethod.java:325) 
at groovy.lang.MetaClassImpl.invokeMethod(MetaClassImpl.java:1210) 
at groovy.lang.MetaClassImpl.invokeMethod(MetaClassImpl.java:1019) 
at groovy.lang.MetaClassImpl.invokeMethod(MetaClassImpl.java:810) 
at com.jayway.restassured.internal.RequestSpecificationImpl.invokeMethod(RequestSpecificationImpl.groovy) 
at org.codehaus.groovy.runtime.callsite.PogoInterceptableSite.call(PogoInterceptableSite.java:48) 
at org.codehaus.groovy.runtime.callsite.CallSiteArray.defaultCall(CallSiteArray.java:48) 
at org.codehaus.groovy.runtime.callsite.AbstractCallSite.call(AbstractCallSite.java:113) 
at org.codehaus.groovy.runtime.callsite.AbstractCallSite.call(AbstractCallSite.java:149) 
at com.jayway.restassured.internal.filter.SendRequestFilter.filter(SendRequestFilter.groovy:31) 
at com.jayway.restassured.filter.Filter$filter.call(Unknown Source) 
at org.codehaus.groovy.runtime.callsite.CallSiteArray.defaultCall(CallSiteArray.java:48) 
at org.codehaus.groovy.runtime.callsite.AbstractCallSite.call(AbstractCallSite.java:113) 
at org.codehaus.groovy.runtime.callsite.AbstractCallSite.call(AbstractCallSite.java:141) 
at com.jayway.restassured.internal.filter.FilterContextImpl.next(FilterContextImpl.groovy:49) 
at com.jayway.restassured.filter.FilterContext$next.call(Unknown Source) 
at org.codehaus.groovy.runtime.callsite.CallSiteArray.defaultCall(CallSiteArray.java:48) 
at org.codehaus.groovy.runtime.callsite.AbstractCallSite.call(AbstractCallSite.java:113) 
at org.codehaus.groovy.runtime.callsite.AbstractCallSite.call(AbstractCallSite.java:133) 
at com.jayway.restassured.internal.RequestSpecificationImpl.invokeFilterChain(RequestSpecificationImpl.groovy:994) 
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) 
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57) 
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) 
at java.lang.reflect.Method.invoke(Method.java:606) 
at org.codehaus.groovy.reflection.CachedMethod.invoke(CachedMethod.java:93) 
at groovy.lang.MetaMethod.doMethodInvoke(MetaMethod.java:325) 
at groovy.lang.MetaClassImpl.invokeMethod(MetaClassImpl.java:1210) 
at groovy.lang.MetaClassImpl.invokeMethod(MetaClassImpl.java:1019) 
at groovy.lang.MetaClassImpl.invokeMethod(MetaClassImpl.java:810) 
at com.jayway.restassured.internal.RequestSpecificationImpl.invokeMethod(RequestSpecificationImpl.groovy) 
at org.codehaus.groovy.runtime.callsite.PogoInterceptableSite.call(PogoInterceptableSite.java:48) 
at org.codehaus.groovy.runtime.callsite.PogoInterceptableSite.callCurrent(PogoInterceptableSite.java:58) 
at org.codehaus.groovy.runtime.callsite.CallSiteArray.defaultCallCurrent(CallSiteArray.java:52) 
at org.codehaus.groovy.runtime.callsite.AbstractCallSite.callCurrent(AbstractCallSite.java:154) 
at org.codehaus.groovy.runtime.callsite.AbstractCallSite.callCurrent(AbstractCallSite.java:182) 
at com.jayway.restassured.internal.RequestSpecificationImpl.applyPathParamsAndSendRequest(RequestSpecificationImpl.groovy:1452) 
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) 
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57) 
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) 
at java.lang.reflect.Method.invoke(Method.java:606) 
at org.codehaus.groovy.reflection.CachedMethod.invoke(CachedMethod.java:93) 
at groovy.lang.MetaMethod.doMethodInvoke(MetaMethod.java:325) 
at groovy.lang.MetaClassImpl.invokeMethod(MetaClassImpl.java:1210) 
at groovy.lang.MetaClassImpl.invokeMethod(MetaClassImpl.java:1019) 
at groovy.lang.MetaClassImpl.invokeMethod(MetaClassImpl.java:810) 
at com.jayway.restassured.internal.RequestSpecificationImpl.invokeMethod(RequestSpecificationImpl.groovy) 
at org.codehaus.groovy.runtime.callsite.PogoInterceptableSite.call(PogoInterceptableSite.java:48) 
at org.codehaus.groovy.runtime.callsite.PogoInterceptableSite.callCurrent(PogoInterceptableSite.java:58) 
at org.codehaus.groovy.runtime.callsite.CallSiteArray.defaultCallCurrent(CallSiteArray.java:52) 
at org.codehaus.groovy.runtime.callsite.AbstractCallSite.callCurrent(AbstractCallSite.java:154) 
at org.codehaus.groovy.runtime.callsite.AbstractCallSite.callCurrent(AbstractCallSite.java:182) 
at com.jayway.restassured.internal.RequestSpecificationImpl.post(RequestSpecificationImpl.groovy:154) 
at com.jayway.restassured.internal.RequestSpecificationImpl.post(RequestSpecificationImpl.groovy) 
at Helpers.RequestInjection.setResponsePostRequest(RequestInjection.java:69) 
at com.orange.webservices.DictServiceTest.happyCase(DictServiceTest.java:28) 

ответ

1

REST-Гарантированный библиотеки, как имя неявно предполагает, только поддержка REST услуг, а не SOAP.

Если вы хотите REST и SOAP услуги, которые будут поддерживаться единой структурой использования Citrus Framework

+0

Спасибо за ответ. Я обязательно рассмотрю эти рамки. Но в моем случае я могу использовать библиотеку Rest-Assured довольно хорошо, с единственным ограничением использования ее с конструктором запросов Spec. – Atishay

+0

@Atishay, разместите запрос на RequestSpecBuilder в новом вопросе, надеюсь, сообщество SO решит проблему. Если ответ решил проблему текущего вопроса, PLS отметьте его как ответ. – parishodak

+0

Привет, Вопрос, который я опубликовал, является точной проблемой, с которой я столкнулся. Ваш ответ полезен для меня, но мой вопрос все еще остается нетронутым. – Atishay

0

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

Оказалось, что при использовании RequestSpecBuilder (если не указано) автоматически устанавливается порт 8080. Решено, явно указывая порт.

 Смежные вопросы

  • Нет связанных вопросов^_^