SOAP Builders Round IV : Web Services Interoperability Testing

Overview

The following tests demonstrate other areas of WSDL interoperability between SOAP-based web service toolkits. The first test suite Group G cover testing the binding of messages based on the MIME multipart mechanism for encapsulation of compound documents.   This test area covers SOAP 1.1 messages with attachments in both RPC style and Document Literal style test cases.    The Group H also using SOAP 1.1 cover fault messaging where the content of faults thrown by an operation are passed as a parameter to the operation.   Group I covers WSDL/XSD testing.   Methods for these tests include all the methods used in round 1 and round 2 but use as DOC/LIT soap messages instead of RPC/ENC soap messages.   The description overview under each test group have links detailing the test specifications.    Results and links to the wsdls and endpoints are included in each group section.

Group G Tests

SwA/DIME (attachments)

The procedure

Here are the steps for each test and a corresponding table that illustrates the code being generated and the calls being made.

    1. Generate and execute client code based on given wsdl.
    2. Execute client against every service for Group G Fault tests.

The Tests

 

 

Test

Description

Binding Style/Use

Virtuoso URL

Dime Doc/Lit

Series of Tests

·       echoBase64AsAttachement()

·       echoAttachementAsBase64()

·       echoAttachment()

·       echoAttachments()

·       echoAttachmentAsString()

·       echoUnrefAttachments()

Doc/Literal

http://demo.openlinksw.com:8890/r4/groupG/dime/doc/services.wsdl

Dime RPC

Series of Tests

·       echoBase64AsAttachement()

·       echoAttachementAsBase64()

·       echoAttachment()

·       echoAttachments()

·       echoAttachmentAsString()

Rpc/encoded

http://demo.openlinksw.com:8890/r4/groupG/dime/rpc/services.wsdl

SwA Doc/Lit

 

Doc/Literal

 

SwA RPC

 

Rpc/encoded

 

Group H Tests

Fault message processing

The Test Specification Document outlines the test cases. WSDL documents:

The procedure

Here are the steps for each test and a corresponding table that illustrates the code being generated and the calls being made.

      1. Generate and execute client code based on given wsdl.
      2. Execute client against every service for Group H Fault tests.

The Tests

 

Test

Description

Binding Style/Use

Virtuoso URL

simple-rpc-encoded

Series of Tests

·       echoEmptyFault()

·       echoStringFault()

·       echoIntArrayFault()

·       echoMultipleFaults1(1-4)

·       echoMultipleFaults2(1-4)

·       echoMultipleFaults3(1-3)

·       echoMultipleFaults4(1-3)

Rpc/encoded

http://demo.openlinksw.com:8890/r4/groupH/simple/rpc/services.wsdl

 

complex-rpc-encoded

Series of Tests

·       echoSOAPStructFault()

·       echoBaseStructFault()

·       echoExtendedStructFault()

·       echoMultipleFaults1(1-3)

·       echoMultipleFaults2(1-4)

Rpc/encoded

http://demo.openlinksw.com:8890/r4/groupH/complex/rpc/services.wsdl

simple-doc-literal

 

Doc/Literal

http://demo.openlinksw.com:8890/r4/groupH/simple/doc/services.wsdl

complex-doc-literal

 

Doc/Literal

http://demo.openlinksw.com:8890/r4/groupH/complex/doc/services.wsdl

soapfault

 

SoapFault

 

 

Group I Tests

WSDL/XSD testing

The Test Specification Document outlines the test cases. WSDL documents:

The procedure

Here are the steps for each test and a corresponding table that illustrates the code being generated and the calls being made.

    1. Generate and execute client code based on given wsdl.
    2. Execute client against every service for Group I WSDL/XSD test.

The Tests

 

Test

Description

Binding Style/Use

Virtuoso URL

WSDL/XSD

Series of Tests

  • echoVoid()                           
  • echoInteger()                        
  • echoFloat()                          
  • echoString(1)                        
  • echoString(2)                        
  • echoBase64()                       
  • echoDate()                           
  • echoComplexType(1)             
  • echoComplexType(2)             
  • echoIntegerMultiOccurs()        
  • echoFloatMultiOccurs()          
  • echoStringMultiOccurs(1)       
  • echoStringMultiOccurs(2)       
  • echoComplexTypeMultiOccurs(1)      
  • echoComplexTypeMultiOccurs(2)      
  • echoDecimal()
  • echoBoolean()
  • echoHexBinary()                   
  • echoComplexTypeAsSimpleTypes(1)  
  • echoComplexTypeAsSimpleTypes(2)  
  • echoSimpleTypesAsComplexType(1)  
  • echoSimpleTypesAsComplexType(2)  
  • echoNestedComplexType(1)    
  • echoNestedComplexType(2)    
  • echoNestedMultiOccurs()        
  • echoChoice()                        
  • echoEnum()
  • echoAnyType()                     
  • echoAnyElement()
  • echoVoidSoapHeader(1)         
  • echoVoidSoapHeader(2)         
  • echoVoidSoapHeader(3)         
  • echoVoidSoapHeader(4)
  • echoVoidSoapHeader(5)         
  • echoVoidSoapHeader(6)

Rpc/encoded

http://demo.openlinksw.com:8890/r4/groupI/services.wsdl