Variables & Variable processing

Int4 Suite provides a unique solution for managing data in test automation without any coding, only based on configuration. This is called the Variable concept and is a key element in Automation Object configuration.

Basics of Variable processing

Variable itself is a placeholder for data element, that can be tightly coupled with the tested message.

It is possible for a single variable definition to store multiple values, for example when a Variable is mapped to a field in a document that occurs multiple times.

Variable processing occurs in a context of test case execution, based on the definition in the relevant Automation Object

Possible processing steps for a variable

Variables can be used to parametrize other Automation Object settings. To use variable value in parameter enter variable name in curly braces.

Example: using variable ‘RFC’ in HTTP Destination parameter

image-20240626-123928.png

 

Read

This step is used to set the initial value of the variable and bind it with the document, for example by reading a specific field from the test case input. This step can

Replace

In this step, variable value can be changed. If the variable is bound to the test message, the message content will be also updated

Populate after

Variable value can be updated after the test execution. This is used to get specific data from the test execution (e.g. read the number of backend document created by inbound EDI message). Such value can be used in subsequent test cases.

Find

This is a special step, dedicated for Outbound test cases. It allows Int4 Suite to locate messages in the tested system based on the Variable value. For example, if we’re doing and outbound test, we’re usually looking to find a message that relates to tested process.

Please note that not all combinations of Variable processing steps make sense. There are certain patterns for common usage scenarios.

Creation of Variables

Variables are defined in the Automation Object.

  1. Create - creates new Variable

  2. Edit - allows edition of Variable details

  3. Delete - removes a variable

Basic Variable definition

  • Name - technical name of variable, alphanumeric, for consistency please use only capital letters

  • Description - free form text description of variable

  • Type - basic variable type

    • Read & Replace - used for typical scenario to update variable before test execution (e.g. to update a sequential number in a document for unique identification)

    • Find Message - used for outbound scenarios to find messages in the integration layer

    • Custom - used for custom variable processing definition

  • Scope - variable scope

    • Test case - variable is processed for every test execution

    • Test run - variable is processed only once within a test run

Editing Variable definition details

Clicking on the edit button brings up a new screen, allowing to define details of Variable processing.

Top part of the screen contains basic Variable settings.

Middle part of the screen contains definition for variable processing logic.

Bottom part of the screen enables Variable testing.

Variable testing

Provide the test case in the “Test case” field and click “Refresh”. This will simulate Variable behaviour in the current Automation Object, taking input data from the selected test case.

Variable processing settings

The tables below summarize all possible processing definitions.

Read

Processing definition

Usage

Processing definition

Usage

Concatenate

Concatenate one or more value of variables and constant text.

Constant

Provide the value to fill in the Variable

Read Variable from saved message (XPath)

Provide the XPath/JSONPath or Flat file processing definition to locate the data in the saved input message

Read Variable from message header (XPath)

Provide the XPath/JSONPath or Flat file processing definition to locate the data in the saved input message header

Read Variable from saved response (XPath)

Provide the XPath/JSONPath or Flat file processing definition to locate the data in the saved output message

Read Variable from saved resp. header

Provide the XPath/JSONPath or Flat file processing definition to locate the data in the saved output message header

Read Variable from previous test case

Provide the name of Variable in previous (parent) test case to be loaded in the current Variable during test execution - this will need to match all the variable values

Read Variable from previous TC (filtered)

Provide the name of Variable in previous (parent) test case to be loaded in the current Variable during test execution - this will need to match just one value (use for one-to-many scenarios)

Read secure parameter

Reads the value of secure parameter into the Variable. Please note that test report will not show the variable value, to ensure parameter security

Read user defined value from cockpit

Using this option will enable entering the value for such a Variable from APITester Cockpit before test execution

Replace

Processing definition

Usage

Processing definition

Usage

Concatenate

Concatenate one or more value of variables and constant text.

Replace value with constant

Provide the value to fill in the Variable

Generate date

Loads current date into the variable. Use the search help icon:

To open a pop-up which allows to specify date format and date value calculation logic. Read below for more details.

Replace value based on value mapping

Provide the name of the Mapping Object to be used for value replacement. Read this manual section for more details: Int4 Suite Configuration | Define Mapping Objects activity

Generate GUID

Used to generate a unique identifier

Generate value from number range

Select the number range within the Automation Object definition to be used for number generation. Read this manual section for more details: Automation Objects | Number Ranges

Add prefix

Specify a prefix string to be added to current variable content

Generate random number

Generates a random number

Read variable from previous test case

Provide the name of Variable in previous (parent) test case to be loaded in the current Variable during test execution

Read secure parameter

Reads the value of secure parameter into the Variable. Please note that test report will not show the variable value, to ensure parameter security

Add suffix

Specify a suffix string to be added to current variable content

Read value from SY structure

Read the value of the system status structures of the ABAP Application server. Choose an item from the dropdown

Read parameter value from TVARVC

This enables reading parameter data from TVARVC table, that contains control parameters, e.g. for background job execution. Use SAP GUI transaction STVARVCto define such parameters.

Read user defined value from cockpit

Using this option will enable entering the value for such a Variable from APITester Cockpit before test execution

Controlling the generated date

  • Format allows to specify date format, using D, M, Y as placeholder for days, months and years.

  • Base date can be selected, according to needs.

  • Offset allows to control days offset from the base date.

Populate after

These steps are executed following the test case execution and capture of the test output (e.g. after an UI script is ran, after the response/output message is captured, after database validation is executed - depending on the configuration of Automation Object)

Processing definition

Usage

Processing definition

Usage

Concatenate

Concatenate one or more value of variables and constant text.

Read variable from DB res (XPath)

Specify XPath to database structure to capture the value from DB comparison report

Read variable from eCATT Export Param

Specify variable name from eCATT export parameters. This is only available when executing eCATT scripts locally on the same system where Int4 Suite operates!

Read variable from eCATT log (XPath)

Specify XPath to locate data in eCATT execution log XML

Read message ID

Reads the generated message ID, read from the integration platform, for the injected message

Read variable from outbound msg (XPath)

Specify XPath/JSONPath or Flat file expression to read value from the outbound/response message payload

Read variable from resp. header

Specify XPath/JSONPath or Flat file expression to read value from the outbound/response message header

Read outb. message ID

Reads the generated message ID, read from the integration platform, for the outbound message

Read variable from Selenium Script

Read data generated from Selenium Script, based on Selenium Script variable

Find

These definitions drive the message identification on the integration platform. They do not modify Variable content. They require the variable to be populated.

Based on the Variable content and selected processing, Int4 Suite will use different logic to identify whether the messages found on the interface specified by the Automation Object are relevant for that specific test case execution.

Processing definition

Usage

Processing definition

Usage

Concatenate

Concatenate one or more value of variables and constant text.

Find using Tracked Field

Used to locate messages in the Boomi platform, using specific Tracked Field name. Such field must be defined in Boomi for the relevant interface for this to work.

Find using XPath

Specify XPath/JSONPath or Flat file expression to locate value field to be compared with Variable value. The values in specified field and in the Variable must be identical.

XPath value contains Variable

Specify XPath/JSONPath or Flat file expression to locate value field to be compared with Variable value. The values in specified field will be matched if any portion of it contains the Variable

Variable contains XPath value

Specify XPath/JSONPath or Flat file expression to locate value field to be compared with Variable value. The values in specified field will be matched if any portion of it is contained in the Variable

 

© 2017 - 2022 Int4 AG All rights reserved