Re: Can LoadRunner 11 provide load against One Way WebServices? (675 Views)
Reply
Trusted Contributor
Percy Bell
Posts: 348
Registered: ‎09-18-2008
Message 1 of 4 (715 Views)
Accepted Solution

Can LoadRunner 11 provide load against One Way WebServices?

I have a WebService that is a one way webservice that doesn't return a response.  How can I tell LoadRunner not to expect a response?  There isn't an option for ExpectedResponse=None.

 

Occasional Advisor
Ashutosh Gupta_1
Posts: 10
Registered: ‎02-16-2009
Message 2 of 4 (708 Views)

Re: Can LoadRunner 11 provide load against One Way WebServices?

Hi,

 

While adding the Service call in the script, i.e.. When you click on Add Service Call, In the pop up, click on Transport Layer Configuration and there is a check box which says, "ASYNC". Select the same, After this your request will work as Fire and Forget and Vugen will not look for the response.

Trusted Contributor
Percy Bell
Posts: 348
Registered: ‎09-18-2008
Message 3 of 4 (698 Views)

Re: Can LoadRunner 11 provide load against One Way WebServices?

This doesn't work.  Upon further investigation,  Asynchonous Calls still wait for an "event" to occur which LoadRunner waits for.  If this "event" doesn't take place within a timeout period,  the request fails:

 

Starting iteration 1.
Starting action Order.
Order.c(50): Notify: Transaction "orderParts" started.
Order.c(52): Web service call "orderParts_101" started
Order.c(52): Error: Internal error, please call customer support. Details: class java.lang.Object :
Order.c(52): Error: Web service call "orderParts_101" execution failed
Order.c(52): Notify: Transaction "orderParts" ended with "Fail" status (Duration: 0.9624 Wasted Time: 0.6770).
Ending action Order.
Warning: Removing unhandled event
Ending iteration 1.

Trusted Contributor
Percy Bell
Posts: 348
Registered: ‎09-18-2008
Message 4 of 4 (675 Views)

Re: Can LoadRunner 11 provide load against One Way WebServices?

I was able to solve this problem. If you remove the ExpectedResponse and Results parameters, the request will work as a one-way service. The documentation doesn't list these parameters as optional.

If you remove the RESULTS section LR fails with the following error:

Order.c(66): Error: Required "BEGIN_RESULT" argument collection is missing.
Order.c(66): Error: Web service call "orderParts_101" execution failed
Order.c(66): Error: C interpreter run time error: Order.c (66): Error -- memory violation : Exception ACCESS_VIOLATION received.

However you can send it an empty RESULTS section as outlined below from my working code:

web_service_call( "StepName=orderParts_101",
"SOAPMethod=B2C|B2CPort|orderParts",
"Service=B2C", "JMSSendQueueName=jms/b2cQ",
BEGIN_ARGUMENTS,
"xml:store="
"<store>"
"<clientOrderNumber>{OrderNumber}</clientOrderNumber>"
"<billTo>{billTo}</billTo>"

"<order>{order}</order>"
"</store>",
END_ARGUMENTS,
BEGIN_RESULT,
END_RESULT,
LAST);


The opinions expressed above are the personal opinions of the authors, not of HP. By using this site, you accept the Terms of Use and Rules of Participation.