0

We are experiencing java.net.SocketTimeoutException error on running the SOAP requests from testrunner.bat which is configured as a Windows Batch command in Jenkins.

Windows command code used in Jenkins: echo %WORKSPACE% set currentDir=%WORKSPACE% set projectDir="%currentDir%\Connect-Smoke-Suite.xml" echo %projectDir% cd C:\Program Files (x86)\SmartBear\SoapUI-5.4.0\bin REM testrunner.bat -a %projectDir% -s"placeOrders" -e"https://qa.connect.com/ws/orders.wsdl"

Please find the error log.

13:27:30,742 INFO  [log] [A136792, A125812]
13:27:30,752 INFO  [SoapUITestCaseRunner] running step [placeOrder]
13:27:30,913 DEBUG [HttpClientSupport$SoapUIHttpClient] Attempt 1 to execute request
13:27:30,914 DEBUG [SoapUIMultiThreadedHttpConnectionManager$SoapUIDefaultClientConnection] Sending request: POST /ws/orders.wsdl HTTP/1.1
Picked up JAVA_TOOL_OPTIONS: -agentlib:jvmhook
13:28:30,967 DEBUG [SoapUIMultiThreadedHttpConnectionManager$SoapUIDefaultClientConnection] Connection closed
13:28:30,968 DEBUG [HttpClientSupport$SoapUIHttpClient] Closing the connection.
13:28:30,968 DEBUG [SoapUIMultiThreadedHttpConnectionManager$SoapUIDefaultClientConnection] Connection closed
13:28:30,968 DEBUG [SoapUIMultiThreadedHttpConnectionManager$SoapUIDefaultClientConnection] Connection shut down
13:28:30,970 ERROR [WsdlSubmit] Exception in request: java.net.SocketTimeoutException: Read timed out
13:28:30,970 ERROR [SoapUI] An error occurred [Read timed out], see error log for details
java.net.SocketTimeoutException: Read timed out
    at java.net.SocketInputStream.socketRead0(Native Method)
    at java.net.SocketInputStream.socketRead(Unknown Source)
    at java.net.SocketInputStream.read(Unknown Source)
    at java.net.SocketInputStream.read(Unknown Source)
    at sun.security.ssl.InputRecord.readFully(Unknown Source)
    at sun.security.ssl.InputRecord.read(Unknown Source)
    at sun.security.ssl.SSLSocketImpl.readRecord(Unknown Source)
    at sun.security.ssl.SSLSocketImpl.readDataRecord(Unknown Source)
    at sun.security.ssl.AppInputStream.read(Unknown Source)
    at org.apache.http.impl.io.AbstractSessionInputBuffer.fillBuffer(AbstractSessionInputBuffer.java:149)
    at org.apache.http.impl.io.SocketInputBuffer.fillBuffer(SocketInputBuffer.java:110)
    at org.apache.http.impl.io.AbstractSessionInputBuffer.readLine(AbstractSessionInputBuffer.java:264)
    at org.apache.http.impl.conn.DefaultResponseParser.parseHead(DefaultResponseParser.java:98)
    at org.apache.http.impl.io.AbstractMessageParser.parse(AbstractMessageParser.java:252)
    at org.apache.http.impl.AbstractHttpClientConnection.receiveResponseHeader(AbstractHttpClientConnection.java:281)
    at org.apache.http.impl.conn.DefaultClientConnection.receiveResponseHeader(DefaultClientConnection.java:247)
    at org.apache.http.impl.conn.AbstractClientConnAdapter.receiveResponseHeader(AbstractClientConnAdapter.java:219)
    at com.eviware.soapui.impl.wsdl.support.http.HttpClientSupport$SoapUIHttpRequestExecutor.doReceiveResponse(HttpClientSupport.java:147)
    at org.apache.http.protocol.HttpRequestExecutor.execute(HttpRequestExecutor.java:125)
    at org.apache.http.impl.client.DefaultRequestDirector.tryExecute(DefaultRequestDirector.java:633)
    at org.apache.http.impl.client.DefaultRequestDirector.execute(DefaultRequestDirector.java:454)
    at org.apache.http.impl.client.AbstractHttpClient.execute(AbstractHttpClient.java:820)
    at org.apache.http.impl.client.AbstractHttpClient.execute(AbstractHttpClient.java:754)
    at com.eviware.soapui.impl.wsdl.support.http.HttpClientSupport$Helper.execute(HttpClientSupport.java:233)
    at com.eviware.soapui.impl.wsdl.support.http.HttpClientSupport.execute(HttpClientSupport.java:323)
    at com.eviware.soapui.impl.wsdl.submit.transports.http.HttpClientRequestTransport.submitRequest(HttpClientRequestTransport.java:297)
    at com.eviware.soapui.impl.wsdl.submit.transports.http.HttpClientRequestTransport.sendRequest(HttpClientRequestTransport.java:227)
    at com.eviware.soapui.impl.wsdl.WsdlSubmit.run(WsdlSubmit.java:119)
    at com.eviware.soapui.impl.wsdl.WsdlSubmit.submitRequest(WsdlSubmit.java:79)
    at com.eviware.soapui.impl.wsdl.WsdlRequest.submit(WsdlRequest.java:217)
    at com.eviware.soapui.impl.wsdl.teststeps.WsdlTestRequestStep.run(WsdlTestRequestStep.java:364)
    at com.eviware.soapui.impl.wsdl.support.AbstractTestCaseRunner.runTestStep(AbstractTestCaseRunner.java:211)
    at com.eviware.soapui.impl.wsdl.testcase.WsdlTestCaseRunner.runCurrentTestStep(WsdlTestCaseRunner.java:47)
    at com.eviware.soapui.impl.wsdl.support.AbstractTestCaseRunner.internalRun(AbstractTestCaseRunner.java:138)
    at com.eviware.soapui.impl.wsdl.support.AbstractTestCaseRunner.internalRun(AbstractTestCaseRunner.java:46)
    at com.eviware.soapui.impl.wsdl.support.AbstractTestRunner.run(AbstractTestRunner.java:128)
    at java.util.concurrent.Executors$RunnableAdapter.call(Unknown Source)
    at java.util.concurrent.FutureTask.run(Unknown Source)
    at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
    at java.lang.Thread.run(Unknown Source)
13:28:30,975 INFO  [SoapUITestCaseRunner] Assertion [SOAP Response] has status UNKNOWN
Santosh
  • 7
  • 1
  • 7

1 Answers1

1

You can increase the time using below instructions:

Use menu options File -> Preferences -> HTTP Settings -> Socket Timeout and set the appropriate value. Then save the preferences.

EDIT:

When the preferences are saved, settings are saved into file and that is located under user home directory.

testrunner.bat file allows to pass settings file using '-t'. Use that option.

Rao
  • 20,781
  • 11
  • 57
  • 77
  • We are running it through testrunner.bat file . – Santosh Jun 07 '18 at 12:45
  • Yes. I did that by configuring the socket timeout in soap ui settings file. – Santosh Jun 07 '18 at 14:29
  • What happened when you do the tests after making changes to the preferences? First try it from SoapUI. – Rao Jun 08 '18 at 02:29
  • From SOAPUI, it is working fine but not from testrunner.bat file. And is there anyway to pass the soapui settings explicitly to testrunner.bat? – Santosh Jun 08 '18 at 20:40
  • I explored the SOAP UI testrunner.bat options and found -t as the required option and it worked. Thank you for the response. – Santosh Jun 09 '18 at 04:57