Hi,
Has anybody worked on wsdl testing? Namely,
- Schema validation
- Semantic validation
- Regression testing of WSDL
- Interoperability
Does anybody have an idea of how to implement the above?
Hi,
Has anybody worked on wsdl testing? Namely,
Does anybody have an idea of how to implement the above?
You'd normally use a tool/product to do this. Altova (XMLSpy) comes to mind.
I use SoapUI for all my SOAP/REST testing. It does all the things that you want is probably one of the most widely used tools out there
I used to use SoapScope from MindReef (ok, I used their trials, but couldn't convince the company to buy it!) This was a very good product for compliance testing as well as for creating regression tests.
They have been purchased by Progress Software. The new URL is http://www.actional.com/mindreef/. I have not used this product they are now a part of.
For interoperability testing of WSDL's the toolkit I would recommend is that which is published by the WS-I for testing compliance against Basic Profile 1.1 and Basic Security Profile 1.0.
To download the tools look for "Interoperability Testing Tools 1.1" on the WS-I Testing tools page
Note that the test tool does 2 types of testing, a) Analysing the WSDL and b) Monitoring the traffic on the wire. I've only used the WSDL analysis.
The output from the WSDL analysis can be a pig to understand and decode and it really helps if you have a handy WSDL/XSD guru near to hand. Sadly these seem in short supply. Also it really helps to have a thorough understanding of WS-I Basic Profile beforehand (the 1.1 specification is at www.ws-i.org/Profiles/BasicProfile-1.1.html) and if you write your WSDLs to this specification then you should achieve conformance readily; which is also an argument against letting tools generate WSDLs for you as they rarely have achieving compliance as a goal.
Also note that when your WSDL comes through the analysis with a PASS this still doesn't guarantee interoperability with consumers written with the wide range of tools out there which generate proxy code from a WSDL.
At best you are getting a "stamp of approval" that gives you the best chance of meeting interoperability with the widest range of consumers. Once you do have a compliant WSDL you can claim compliance and assert this in the WSDL using the recommendations in the www.ws-i.org/Profiles/ConformanceClaims-1.0-2004-11-15.html specification.
Sorry couldn't post with more hyperlinks but as a new user I'm only allowed one!