Automation Testing Tool : Parasoft SOA

: In this paper we will discuss about the tool which is widely use for testing that is SOA (Service oriented architecture). SOA provides the flexibility and connectivity which increases both the opportunity for errors and the complexity of the testing. With Parasoft SOAtest we can test fully integrated API and web service that automate end-to-end functional API testing. Parasoft SOAtest automates API testing by providing advanced test creation capabilities that leverage AI and machine learning to process service definitions and recorded traffic, produce maintainable and reusable test assets, and enable continuous functional and load testing.


I. INTRODUCTION
Parasoft SOAtest is a Web API Automation tool that makes use of two services i.e.SOAP and REST to perform Functional, Regression, Unit Testing, Runtime error detection, static code analysis, and service virtualization and so on.Users can create end-to-end test scenarios that span APIs, web services, database, and the UI layer.On basis of operation test will get created, which can then be linked with functional testing scenarios and data driven with external data sources to thoroughly cover requirements and use cases.The process of manual testing is time-consuming and the problem becomes worse when we repeat the tests after each correction and with each related feature.Automated testing helps to make this process more effective.We can define test cases just once and we can exercise the software many times automatically.

Objective
Aim of this paper is to provide information about tool which will beneficial for creation of script which will ensure that maintenance triggers (i.e.WIP) for High Risk clients are created only when necessary and as governed by Anti Money laundering Process standards are submitted for approval in a timely fashion by those required to provide approval and have proper routing and workflow in place to avoid unnecessary work flaws and delays in processing.

Regression Testing
Regression Testing is perform when there are multiple releases so as to ensure the stability and availability of the systems.A large regression test suite will be created which can cover the services form an important part of the application.Same test suite we can use in multiple releases for the project.

Service Level Testing
In Service level testing we can test for functionality, security, performance and interoperability of component.All services first needs to be tested independently.

Functional Testing
Functional Testing should be done on each service to.It ensures that service delivers the right response to each request.Check request and response for each and every operation the service has to perform in run time.In functional testing we can validate the fault messages when an error occurs at the server, client or network level.
IV. SERVICES USED IN SOA 4.1 SOAP SOAP stands for Simple Object Access Protocol.This protocol is based on XML which accesses web services.The SOAP Client sends messages to SOAP servers.With the help of this tool we can test web service, its test the communication between the client and server, and also checks the content of the SOAP messages.All the requests and responses in SOAP are written in XML (Extensible Markup Language).SOAP is more secure as compared to its counterpart.It does not provide any independent processing for different methods and that is the reason why it is called a "state-full" protocol.

REST
REST stands for Representational State Transfer (REST) which specifies constraints, such as the uniform interface, that if applied to a web service induce desirable properties, such as performance, scalability, and modifiability which enable services to work best on the Web.REST Client tool sends messages to RESTful services.All the requests and responses in SOAP are written in XML (Extensible Markup Language), JSON (JavaScript Object Notation) or Plain Text.Because of involvement of JSON (which is light-weight) in the request/payload REST is faster than SOAP.

Key Difference of SOAP and REST
 SOAP is a protocol whereas REST is an architectural pattern.
 SOAP uses service interfaces to reveal its functionality to client applications while REST uses Uniform Service locators to access to the components on the hardware device. SOAP needs more bandwidth for its usage whereas REST doesn't need much bandwidth.

V. RESEARCH METHODOLOGY:
Post finalization of topic I have went through multiple SOA related research papers which helped me to understand basic knowledge about the tool.Further I went through multiple videos and websites to know about tools and functionalities available in tools.With the helped of all gathered information I have tried to create automation script which can test request which we received from client.After successful creation of script we have tested around 9000+ cases in minimum time and we were able to find defects easily.

Analysis
Post receiving requirements we have analyzed that we can create automation script using tools which are available in SOA.This solution will help to test maximum number of cases within short period of time.Also we can create multiple combinations of test cases which will be beneficial to validate accuracy of code.

Findings
 Test Suite: Test suite is basically used for project creation.Under this we can add different tools and create automation script. Data Sources: With the help of data sources we can configure external data for use in parameterization.There are multiple choices are available with which we can use external data as input for eg.CSV file, Excel, Database, Table , File, Writeable, Aggregate, Data group, Repository.In our script we have added data source in table format.This will create in-project spreadsheets. SOAP Client: The SOAP Client tool will send messages to SOAP servers.It's useful to test a Web service, it will help us to test the communication between the client and server, and check the content of the SOAP messages.We can use SOAP client to test services with or without a WSDL.This tool is the base of most SOA functional test cases.Basically in SOAP Client we can provide request payload.We can parameterized payload and add input values using data sources. Extension Tool: This tool permits users to perform complex validation or transformation operations on tool outputs or execute any custom actions as a part of test scenario.In this tool we can provide SQL queries which will validate data across data base.Also we can use this tool to add assertion in our script with which we can generate results in report format.