Applies to ReadyAPI 2.1, last modified on August 1, 2017

Test steps are core building blocks of functional tests. You add them to a test case to control the execution flow and validate the functionality of the testing service. Each step performs a simple action: simulates a request, exchanges data, checks responses, and so on.

A test case starts running from the topmost test step and executes test steps in sequence. However, it is possible to create more complex behavior by using conditional branching, loops, and calls of other test cases.

The following test steps are available in ReadyAPI:

Sending Requests
SOAP Request Sends a SOAP request over either HTTP, HTTPS, or JMS and receives the response if any. SOAP Request test steps are tied to the corresponding WSDL operation and its WSDL interface added to a project when importing the corresponding WSDL.
REST Request Sends a REST request over HTTP, HTTPS, or JMS and receives the response if any. REST Request test steps are tied to the corresponding REST Service, Resource, and Method in the containing project.
HTTP Request Sends an HTTP request over HTTP, HTTPS, or JMS and returns the results.
AMF Request Sends an Action Message Format request over HTTP or HTTPS and returns the result.
JDBC Request Sends a database query or stored procedure call to the configured database and returns the result.
JMS Request Sends a SOAP or REST request by using Java Message Service.
XML-RPC Simulates an XML-RPC operation call.
 
Working With Properties
Properties Helps you define an arbitrary number of properties that can optionally be read from or written to a file. These can then be used for parameterization of requests, assertions, and so on.
Property Transfer Helps you transfer or extract property values between test steps, for example, you can extract a value from a response message and write it to a DataSink test step for external storage.
Property Wait Holds execution while waiting for a property value.
 
Data-Driven Testing
DataSource Allows you to read property values from a variety of external sources (Databases, Excel files, folders, etc.), which can then be used in your tests, for example to populate requests (via a property transfer), validate responses, or serve as an input for nested DataSources.
DataSink Allows you to write property-values to a number of external storages (Databases, Excel, etc.) for a later analysis or processing.
DataGen (Deprecated) Allows you to create dynamic properties for creating counters, random property values, and so on.
DataSource Loop Pairs up with the DataSource test step to allow iterations over a sequence of test steps that should be executed for each row of values available in DataSource.
 
Execution Flow
Conditional GoTo Checks for specific values in the last received message in the test case and jumps to the target test step.
Run TestCase Transfers execution of a test case to the specified target test case and sets its properties as configured in the test step. Use this to create modular test cases, for example when the same sequence of test steps should be run at the beginning of a number of test cases.
Delay Pauses the execution of the test case for the specified time.
 
Scripting
Groovy Script Custom scripting with Groovy.
 
Validation
Assertion Supports highly flexible and complex assertions of a property with a valid assertion. Supports grouping and the Boolean logic.
 
Virting
SOAP VirtResponse Listens and waits for an HTTP or HTTPS SOAP request and returns the configured response. Used for testing callbacks and asynchronous processes.
REST VirtResponse Listens to and waits for an HTTP or HTTPS REST request and returns the configured response. Used for testing callbacks and asynchronous processes.
Virt Runner Runs or stops the specified virt.
 
Working With MQTT
Receive MQTT Message Simulates actions of an MQTT client.
Publish using MQTT Simulates actions of an MQTT publisher.
Drop MQTT Connection Simulates a disconnection from an MQTT broker.
 
Working With Files
File Wait Waits for the file to appear.
Create File Creates a file, and, optionally, waits for it to be deleted.
 
Miscellaneous
Manual Performs a manual check as part of your automated test run.
TestComplete Runs TestComplete tests.
Send Mail Sends an email from the test.

See Also

Managing Test Steps
SoapUI Tutorials and Samples
Creating Functional Tests