Installation Adding a WS Call Running Tests Adding Information from External Sources Editing http headers and http header cookies Credentials usage Advanced WCF Settings Command Line
InstallationSOA Cleaner doesn't require any installation, just download it from the download page unzip the file and run.
Adding a WS Call
To Add a WS call just click the add button in the main window. A new dialog will open, where you can choose between soap (including wcf) or rest, enter the wsdl, chose a service a port and an operation, and then enter the required values in the grid, or switch to xml mode and enter the xml. when you finish, you can either click the invoke button, or click on add.
After a step or several steps were added, simply click the run button. The WS will be invoked, and you will receive a report. If you would like to run a single step, you could either edit the step and click on the 'invoke' button, or right click the step and click on 'Run this step only' . To run a massive test click on the 'view' tab in the menu, and click 'show massive test panel'. Enter the relevant information, and click on 'Run Massive Test'. To run a load test, you could either click on 'Load Test' in the menu, or right click a step and click on 'Load test this step'
Adding information from external sources
While editing the grid in the 'web service add' dialog or 'expected response' dialog, choose the relevant cell, and click on one of the small buttons in the upper right corner of the grid. To add content from a CSV file or a random number or string, click on the fist small button, and fill in the dialog. To add content from previous responses click the second small button, a dialog will open containing all previous steps added, choose the step and the relevant cell, and click on select. To cancel any of the above, click on the third small button.
Editing http headers and http header cookies
Credential definitions can be found in the ‘Web Service Add Dialog’ under Settings->Credentials. First tab named ‘Basic & Windows’ enables definition of UserName (Basic) credentials, or Windows Authentication credentials. Second tab named ‘Digest’ is for definition of Http Digest credentials. (Digest authentication is intended to supersede unencrypted use of the Basic access authentication, allowing user identity to be established securely without having to send a password in plaintext over the network). Third tab named ‘Certificate’ enables attachment of a certificate from a file; a file certificate ends with a ‘cer’ extension. If file requires a password, the password should be supplied in the ‘password’ field. In the ‘Misc’ tab, one can define STS settings for WsFederationHttpBinding as well as a Mesh password, which is used in a P2P connection under NetPeerTcpBinding. In the 'Adv' tab, one can edit the DNS identity if needed (commonly used in WsFederationHttpBinding), define impersonation level, and whether on not to allow NTLM Authentication (also known as Integrated Windows Authentication – IWA, or HTTP Negotiate authentication).
Advanced WCF Settings
The 'Advanced WCF Settings' dialog can be found in the ‘Web Service Add Dialog’ under Settings->Advanced WCF. The following settings can be defined: Action: A description of how the message should be processed. Leave empty to use default. MessageEncoding: Determine whether MTOM or Text/XML is used to encode SOAP messages. TextEncoding: indicates the character encoding that is used. The default is UTF8. uniqueid (none auto or manual): The unique ID of the message. maxbuffers: MaxBufferPoolSize : maximum amount of memory allocated for the buffer manager that manages the buffers required by endpoints using this binding. (default: 65,536 bytes). MaxReceivedMessageSize: maximum size for a message that can be processed by the binding. (Default: 65,536 bytes). MaxBufferSize: (basichttpbinding, NetNamedPipeBinding) The maximum number of bytes that are used to buffer incoming messages in memory. The default is 65,536 bytes. ReaderQuotas: MaxArrayLength: The maximum allowed array length. The default is 16384. MaxBytesPerRead: The maximum allowed bytes returned for each read. The default is 4096. MaxDepth: The maximum nested node depth. The default is 32. MaxNameTableCharCount: The maximum characters allowed in a table name. The default is 16384. MaxStringContentLength: The maximum string length returned by the reader. The default is 8192. timeouts: CloseTimeout: Determines the interval of time provided for a connection to close before the transport raises an exception. The default value is 1 minute. OpenTimeout: Determines the interval of time provided for a connection to open before the transport raises an exception. The default value is 1 minute. ReceiveTimeout: Determines the interval of time that a connection can remain inactive, during which no application messages are received, before it is dropped. The default value is 10 minute. SendTimeout: Determines the interval of time provided for a write operation to complete before the transport raises an exception. The default value is 1 minute. TransferMode: (Basichttpbinding, NetTcpBinding, NetNamedPipeBinding) indicates whether messages are sent buffered or streamed. ClientBaseAddress: (WSDualHttpBinding) Uri that is the base address of the client. The default is "". ListenBacklog: (NetTcpBinding) maximum number of queued connection requests that can be pending. The default is 10. PortSharingEnabled: (NetTcpBinding) true if TCP port sharing is enabled; otherwise, false. The default is false. ListenIPAddress: (NetPeerTcpBinding) contains the well-formed IPv4 or IPv6 address upon which the local peer node is listening. Port: (NetPeerTcpBinding) epresents the network port on which this binding instance will process peer-specific TCP messages. AllowCookies :Determine whether the client accepts cookies and propagates them on future requests. The default is false. ReliableMessaging: can be either ordered or not.
Command line can be used to run a test predefined with the GUI, and saved as a test (usually a ‘soac’ file). Usage: SOACleaner [/c] InputTestFile [LogOutputFile] '/c' - console mode, no GUI. InputTestFile – Path to test file predefined with the GUI, and saved as a test (usually a ‘soac’ file). SOA Cleaner will run this file test. LogOutputFile – An optional parameter, if running in console mode. The log will be saved to the given file. return value (set to %ERRORLEVEL%): number of tests that failed. ‘-1’ if file is corrupted, or if an internal error has occurred.