Using Web Services in a Test Case

Katalon Studio supports various ways to use a Web Service object in a test case. You can call the web service methods from Manual View (keywords test), Script View (test scripts), and verify the responses.  

In Test Request Object View

You can add Web Services request to test case directly from the object details view. Simply click on the plus icon to add to New or any Existing test case.

In Test Case editor's Manual View

Follow the steps below to use web service object in Manual view:

  1. Open a test case in Manual view, then select the option to add a Web Service Keyword from command toolbar.

  2. A Web Service step is added to the test case. 
    To send a request to Web Service, you need to use Send Request keyword. Select the Send Request keyword now.

  3. Double click on object cell to specify the web service object to Send Request.

    Variables for Web Service Test Object

    When you modify the variables of a Web Service Test Object in a test case, the values will ONLY apply to that particular test case. If you reuse that Test Object in another test case, Katalon Studio will get the original values that were defined in the Test Object editor.

  4. The output of Send Request keyword could be validated if needed using different Verify... keywords depending on your situation.

In Test Case editor's Script View

You can use the Send Request keyword for Web Service object and the Verify... keywords to verify the web service response. You may want to refer to Handle Response messages for more details regarding Element Locator:

//Send a SOAP request and returns its response
def response = WS.sendRequest(findTestObject([]))
//Verify if a value at a specific location in response is as expected
WS.verifyElementPropertyValue(response, <Element Locator>, <expected value>)

For example:

If you have used variables and parameters in test requests, you can pass values to the variables as follows:

//Send a test request and pass values to variables used in that request
def response = WS.sendRequest(findTestObject([the ID of Web Service object], ["variable1": value1, "variable2": value2, ... , "variableN": valueN]))

For example:

The following API docs may prove useful when working with web service objects:

Class Description
Request Object Describe all available methods for Request Object
Response Object Describe all available methods for Response Object

Feedback