No SOAP/XML-RPC Sampler exists in JMeter 3.2 - soap

I was a bit surprised that my JMeter 3.1 scripts didn't work in 3.2.
What is the reason of removing SOAP/XML-RPC Sampler in JMeter 3.2? Is there some performance issue etc?

This is part of the JMeter's change due to remove support of HTTPClient 3.1.
SOAP/XML-RPC Request has been removed as part of Bug 60727. Use HTTP
Request element as a replacement.
See Building SOAP request for more details.

If you want to create/update SOAP XML RPC Requests with new jmeter versions then do following things.
List item
open Templates(right side top under 'File')--> Select Template Dropdown--> Building a SOAP WebService Test Plan ->Click on Create --> The Sample SOAP test plan with get created.
List item
Under Number of Users -->HTTP Request(SOAP Request) sample will get created.
Note: sample http link of weather api is now changed, So you cant see any response.

SOAP API option has been deprecated from JMeter updated version.
SO if you have any previous script for the API, then it will not work in updated versions of Jmeter.

Related

403 Forbidden for SharePoint version APIs BUT they work at design time AND all other REST calls work

I have a strange problem whereby any REST APIs relating to SharePoint versions work when testing at design time but generate a 403 Forbidden error at runtime. What is also odd is that all other REST API calls work fine at both design time and runtime and all the parameters are identical to the ones that don't work (headers etc.) and I've done a cut and paste on everything, but still anything relating to versions isn't working, although that might just be a red herring?
The app can successfully delete files and overwrite them, check in and out, etc. so seemingly there are no permission issues. I have also tried checking a file out before reading the version information just in case (as check out is forced before any actions can be carried out on this site) but that didn't work either.
This is an example of one of the calls that is causing the error:
https://mycompany.SharePoint.com/sites/{SiteName}/_api/web/GetFileByServerRelativeUrl('/sites/{SiteName}/Shared%20Documents/{FilenameAndPath}')/version
Look at this post:
https://sharepoint/_api/web/folders/getbyurl('Documents')/files/getbyurl('myfile.docx')/versions?$filter=VersionLabel eq '2.0'
Check the Accept and Content-Type headers in the OnBeforeRequest REST API callback.
I have found that when testing the IDE will send for instance "application/json" for both, but at runtime, the platform adds ";utf-8" to the values of these headers. The requests are then often rejected without a proper error specification/declaration.

How to test load on Set of different API's

I am doing load testing in Soap ui and working on cab booking application so set api like this for example
userSingin ,GetlocationDetails,bookCab,getDriverDetails,acceptRide and completeRide so on.
It will become on loop(on completing of one ride successfully ) so this seniors may happened like 1000 or 10000 times.
The question is how to interlink api do it a single entity and perform load test using soap ui, jmeter or any load testing tools,or by coding please help me sort out problem with simple demo.
SoapUI has some load testing capabilities so given you have a functional test ready you can run it with increased load.
If SoapUI's load testing is not enough (i.e. you cannot create the desired load or find results not too verbose/informative) you can build the same test plan using JMeter's HTTP Request samplers. If you need to send custom Content-Type and SOAPAction headers - it can be done via HTTP Header Manager. See Building a SOAP WebService Test Plan article for more details.
Last but not the least, you can either execute existing SoapUI project using JMeter using Taurus tool, see SoapUI Support for more details on the specific feature and Navigating your First Steps Using Taurus to get familiarized with the tool and its concept.

Restful API debugging

I want to debug the Rest API service project with visual studio 2017.I use breakpoints , the breakpoints becomes yellow at catch exception when I hover my mouse over the e.message but I can not see the error message, also I can not see the error with Debug.Writeline in output window .
When you want to debug an API, it is not the IDE that matters. You need to think of the full flow of the API invocation. If someone is complaining that an API is not working, then you need to divide and conquer the problem. The article on debugging API driven applications detail the layers you need to be aware of. You need to consider
Client application
Client to API connection
API logic
API to database connection
Speed of API and client applications
In simple terms, if you want to see if only the API implementation works, see if there is a response for the request being sent to the API. Then check the logic. Then check the connection to database, and so on ...

Uploading attachment using SOAP sends only 6 bytes?

I am uploading the file using soap request , to demo zephyr enterprise server. The problem , is only the few bytes (6 bytes against 488) are sent to the server. Tried it in both Soap UI and through Java code. The result is same. I had a doubt about the proxy configuration but it supports for manual file upload. Any inputs and suggestion to root cause the issue? I have posted an query in zephyr enterprise forum too.
Thanks
It turned out that you have to enable MTOM in the request properties (Enable MTOM -> True) of the SOAP UI in order the request to work properly and specify a valid ContentID in cid:XXXXXX form as the tag value.
P.S. If you want to send several files to CXF as different parts you will also likely need to uncheck Disable multiparts property.

Blackberry ksoap2 request issues

First time posting a question. I'm trying to call some SOAP webservices from inside a blackberry app using the ksoap2 library. I've successfully managed to get a response from the one service, which uses an HTTP url, but now that I'm trying to get response from a (different) HTTPS url, I've run up against a brick wall.
The response dump I'm getting has the following fault message:
"An error occurred while routing the message for element value : (country option I specified in my request). Keep-Alive and Close may not be set using this property. Parameter name: value."
The weird thing is that using Oxygen XML's SOAP tools with the XML request dump works just fine. Any ideas where to start looking? This has taken up a full day already.
Update:
Responding to your comment below - it turns out the double quoting is part of the SOAP spec. Some servers are more relaxed in their implementation, and will work without the quotes.
ksoap2 doesn't force the quotes onto your actions - you may want to patch your ksoap2 library to ensure the quotes are always there.
ymmv
Original:
I don't think this is a SOAP related problem, nor with BlackBerry.
I think the problem lies on the server side, since that error string is not a common error (just google it to see no hits on the whole internet other than this question).
Looks like this is a job for the network guy on the server side to tell you what he's seeing on his end.
Only other thing I can think of is to make the call using HTTP instead of HTTPS. You can then use some network sniffer to see what the difference between the messages is. Alternatively, install an SSL proxy with something like "Charles" and sniff the packets like that.