Test Steps

Applies to ReadyAPI 3.54, last modified on September 23, 2024

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.
GraphQL Query Sends GraphQL queries based on GraphQL API.
GraphQL Mutation Sends GraphQL mutations based on GraphQL API.
GraphQL Request Sends a GraphQL request that is not connected with a GraphQL schema.
API Connection Publishes and consumes messages from a topic on a Kafka broker.
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 Data Sink test step for external storage.
Property Wait Holds execution while waiting for a property value.
 
Data-Driven Testing
Data Source 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 data sources.
Data Sink 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.
Data Source Loop Pairs up with the Data Source 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 Test Case 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.
 
Web Service Virtualization
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.
Virtual Service Runner Runs or stops the specified virtual service.
 
Working With AMQP
AMQP Declare Exchange Creates an exchange on an AMQP broker.
AMQP Declare Queue Creates a queue on an AMQP broker.
AMQP Bind Queue Binds a queue to an exchange.
AQMP Publish Sends a message to an exchange.
AMQP Receive Fetches a message from a queue.
 
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.
FTP Uploads a file to the specified FTP server.
 
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
Tutorials and Samples (Functional Tests)
Creating Functional Tests

Highlight search results