User actions
A user action refers to a functional command that holds the capability to execute specific operations within a web application, effectively enabling users to interact with and manipulate the application's features and functionalities in a targeted manner.
Qyrus offers a comprehensive selection of 115 distinct action types. These user actions, tailored for Web Testing, are systematically categorized according to their specific nature. Each user action is accompanied by both mandatory and optional input parameters. Mandatory inputs are indicated by an asterisk (*) appended to the input name.
Alert Handlers
Conditional
API
Data Handlers
Email Verifiers
Launch
File And Js Handlers
Functions
Input Events
Mouse Events
Verifiers
Waits
Windows
WebTable
AI
Alert Handlers :
Alert Text
It compares the text of the alert popup with the value specified in the data field.
Inputs :
Data* – the text to compare with the popup
Cancel
It closes the alert popup by clicking on the cancel button.
Ok
It clicks the ok button on the alert popup.
Optional Alert
It captures the text content and subsequently dismisses the alert popup.
Conditional :
Start If
It signify the beginning of the if condition, any subsequent tests related to this action type will be considered as steps within the if condition block. These steps will only be executed if the condition is satisfied.
Note: The conditions within the nested structure are contingent on the "Pass" or "Fail" outcomes of the verifier contained within it.
Exclusively supports Only for verifiers.
End If
It denotes the end of the immediate above if condition.
Nested If Conditions
Nested conditional tests can be accomplished by enclosing a series of "Start If - End If" steps within another set of "Start If - End If" conditional steps.
Thereby creating a hierarchical structure that allows for layered conditional evaluations.
API :
GET
It retrieves data from the server.
Inputs :
Query params
Path params
Authentication
Headers
Data Handler
POST
It sends data to the server and creates a new resource.
Inputs :
Query params
Path params
Authentication
Headers
Body
Data Handler
PUT
It is used to update an existing resource.
Inputs :
Query params
Path params
Authentication
Headers
Body
Data Handler
DELETE
It deletes a resource specified by its URI.
Inputs :
Query params
Path params
Authentication
Headers
Body
Data Handler
PATCH
It partially updates a resource with specific changes.
Inputs :
Query params
Path params
Authentication
Headers
Body
Data Handler
Data Handlers :
Create Variable
It captures the property (text/attribute/URL/emailhyperlink) from the specified web element and stores it in the variable name which is specified. This variable(Data column) can then be employed in subsequent data handler action types.
Inputs :
Variable name*
Locator type and its value*
property to be captured*
Index of the web element
Dynamic Append
The dynamically captured text from the 'Create Variable' user action needs to selected in the data column field. That text value associated to the data column will be appended to the text value in the specified web element.
Inputs :
Data column*
Locator type and its value*
Index of the web element
Dynamic Capture Email
It captures emails sent from the designated sender address within the specified timeframe. The email body and subject are the data columns which are dynamically captured from the 'Create Variable' user action.
Inputs :
From Address* - The sender address.
Time Span(mins)* - The time span for capturing mail within the time given(1min - 5mins)
Email and password
Email subject
Email body
Dynamic Click
It clicks on an element that has its text dynamically generated.
Inputs :
Data column*
Locator type and its value*
Index of the web element
Dynamic Contains
The dynamically captured text from the 'Create Variable' user action needs to selected in the data column field. It checks whether a web element contains the value associated to the data column.
Inputs :
Data column*
Locator type and its value*
Index of the web element
Dynamic Double Click
It double-clicks on an element that has its text dynamically generated.
Inputs :
Data column*
Locator type and its value*
Index of the web element
Dynamic Exists
It checks if an element exists.
Inputs :
Data column*
Locator type and its value*
Index of the web element
Dynamic Go To URL
The dynamically captured text from the 'Create Variable' user action needs to selected in the data column field. That text value associated to the data column will be appended to the static URL and navigates to the specific URL.
Inputs :
Static URL*
Data column* - variable name that contains the value of the specified element
Dynamic Not Exists
It checks if an element dosen't exist.
Inputs :
Data column*
Locator type and its value*
Index of the web element
Dynamic Right Click
It right clicks on an element that has its text dynamically generated.
Inputs :
Data column*
Locator type and its value*
Index of the web element
Dynamic Set
The dynamically captured text from the 'Create Variable' user action needs to selected in the data column field. That text value associated to the data column will be set to the specified web element.
Inputs :
Data column*
Locator type and its value*
Index of the web element
Dynamic Text Assert
The dynamically captured text from the 'Create Variable' user action needs to selected in the data column field. That text value associated to the data column will be verified against the text specified in the data field.
Inputs :
Data*
Data column*
Dynamic Verify
The dynamically captured text from the 'Create Variable' user action needs to selected in the data column field. That text value associated to the data column will be verified with the text present on the specified web element.
Inputs :
Data column*
Locator type and its value*
Index of the web element
Dynamic Verify Is Not
The dynamically captured text from the 'Create Variable' user action needs to selected in the data column field. That text value associated to the data column will be verified with the text present on the specified web element.
Inputs :
Data column*
Locator type and its value*
Index of the web element
Dynamic Verify Greater Than
This action checks whether the specified element's value is greater than value in variable. This action uses the dynamically captured text from the 'Create Variable' user action in the 'Data Column' field. The supported value type is Number.
Inputs :
Data column*
Locator type and its value*
Index of the web element
Dynamic Verify Less Than
This action checks whether the specified element's value is lesser than value in variable. This action uses the dynamically captured text from the 'Create Variable' user action in the 'Data Column' field. The supported value type is Number.
Inputs :
Data column*
Locator type and its value*
Index of the web element
Dynamic Verify PDF Content
Forward the email containing the PDF attachment to the Qyrus mailbox: qyrustestautomation@outlook.com .It should capture the email first and then title of the downloaded pdf, email subject and checks whether the dynamically generated text from the data column is contained within the PDF.
Inputs :
File Name*
Data column*
Email Subject*
Dynamic Verify Downloaded File Name/Type
It validates file downloaded from a specific source matches the expected name and format(.text,.docs,.pdf,.xls).
Inputs :
File Extension*
File Name
Dynamic Verify Remote File Contain
It validates the downloaded file's name and checks whether the dynamically generated text from the data column is contained within the file(.text, .docx, .pdf).
Inputs :
File Name*
Data column*
Dynamic Verify Downloaded PDF Content
It validates the downloaded PDF file's name and checks whether the dynamically generated text from the data column is contained within the PDF.
Inputs :
File Name*
Data column*
Extract Words
It retrieves characters from the data column, using designated start and end indices provided within the data field.
Inputs :
Data*
Data column*
Execute Query
It performs the query execution and stores the resulting response in a designated variable name. This functionality is applicable when a database configuration is in place.
Inputs :
Query*
Data column*
Key extractor*
Modify Dynamic Value
The dynamically captured text from the 'Create Variable' user action needs to selected in the data column field. That text value associated to the data column will be changed with value specified in the data field
Example :
Data column(contains) has the text value "Name" and in the data field the value specified is 'contains+" Modify"', then the value of the data column(contains) becomes "Name Modify".
Inputs :
Data*
Data column*
Remove Words
It removes the word which is specified in data field from the text within the data column.
Inputs :
Data*
Data column*
Verify Otp
In the execution, a waiting period of 50 seconds is initiated, during which an input box is presented. In this box, you are required to manually enter the OTP. The entered OTP will then be set to the specified web element.
Note: The verify OTP must be enabled before the execution
Inputs :
Data column*
Locator type and its value*
Email Verifiers :
The mail should be sent to qyrustestautomation@outlook.com before proceeding with any email verifier.
Capture Email
It captures unread email sent from the specified sender address within the designated timeframe, retrieving the latest one if multiple emails are sent during this period. The email subject or email body or both can be mentioned to identify the email.
Inputs :
From Address*
Time Span(mins)(1min - 5mins)*
Email and password
Email subject - The subject of the email will be used to identify the mail.
Email body - The body of the email will be used to identify the mail.
Verify Email Attachment
It verifies the name, size and type of file attached to the email.
Inputs :
Attachment size(KB)* - The size of attachment present in the mail in kb
Attachment type* -The type of attachment present in the mail must be entered. (pptx, doc, pdf)
Verify Email Body Contains
It verifies if the content of email body contains the data specified.
Inputs :
Email Body*
Verify Email Body Does Not Contain
It verifies if the content of email body does not contain the data specified.
Inputs :
Email Body*
Verify Email Subject
It verifies if the content of email subject with the data specified.
Inputs :
Email Subject*
Launch :
Go To URL
Initiates navigation to the designated URL
Inputs :
URL*
Launch URL With Auth
URL* - The authenticated URL trying to be accessed using basic auth.
Username* - The username of the credentials.
Password* - The password of the credentials
Generic format : "http:// + username + ":" + password + "@" + "link"
Manually authenticating
While manually accessing the website, the basic authentication popup appears which provides access to the site once submitted with valid inputs.
However, while running the script with using launch url type - Launch URL With Basic Authentication, the site automatically gets authenticated with the credentials provided.
This the snapshot of the step with selected action type after the script with the step runs.
Note: In the video of the run, you cannot see the authentication windows pop up appearing , because the authentication is being performed during launch (the credentials are embedded and encoded within the url itself as mentioned above).
File and JS Handlers :
Click Js
It performs a JavaScript-based click on the designated web element, irrespective of the activation status of JavaScript.
Inputs :
Locator type and its value
Index of the web element
Execute Javascript
It executes the JavaScript code provided within the Script field.
Inputs :
Script*
Variable name*
Execute Js
It executes the JavaScript code provided within the Script field.
Inputs :
Locator type and its value*
Index of the web element
Execute Java Code
In the execution, the provided Java code is executed along with the specified class and method name. This execution continues until the point where the current execution has progressed.
Sample format code :
Inputs :
Code* - Java code to be executed
Class name* - The class name which is specified in the code
Method name* - The method which is in the specified code to be excuted
File Upload
It uploads the file to the specified web element capable of file uploads.
Inputs :
Locator type and its value*
Upload File*
Index of the web element
Data
Upload Downloaded Remote File
It uploads the file that was downloaded during execution.
Inputs :
Locator type and its value*
Data*
Index of the web element
Modify Downloaded File Data
This action type allows you to modify data within a downloaded file based on specific parameters such as file type, data source, cell value format, and more. Below are the fields available for this action type and their respective purposes:
Inputs :
File Name
The name of the file you want to modify.
Mandatory Field.
File Type
Select the type of file you want to modify (e.g., Excel, CSV).
Options:
Excel
,CSV
.
Data Source
Specifies the source of data to modify within the file.
Options:
Replace Data
,Cell Address
.
Cell Range (if applicable)
The range of cells within the file where the modification should occur.
Example:
A2, B2
.
Cell Value Format (if applicable)
Determines the format for the cell values to be modified.
Options:
As a Range
,Upload File
.
Cell Value (if applicable)
The value(s) present in the cells that need modification.
Examples:
Single Value:
John Smith
,12345678
,John1234
.String of Values:
John Smith
,"ABC Company, USA"
,Banking Project, AWS, Developer
.
Mandatory Field.
Existing Value (if applicable)
The value(s) currently present in the file that you want to replace.
Example:
White,#FFFFFF, "rgb(100,100,100)"
.Mandatory Field.
Replace With (if applicable)
The new value(s) that will replace the existing values.
Example:
Quinnox, Qyrus
.Mandatory Field.
Upload File (if applicable)
If "Upload File" is selected in the "Cell Value Format" field, use this option to browse and upload the file containing the new values.
Note: The data in the uploaded file should be organized in a horizontal format across all three file types.
Accepts:
Excel
,CSV
,Text File
.
Functions :
Execute Function
It will execute the function which you have stored as a collection of steps.
Inputs :
Function*
Execute Test Case
You need select the test script which is present in the respective test module in the test repository. When the execution reaches this step, all the steps contained within the script are executed.
Inputs :
Script Name*
Data
Input Events :
Append
It appends the text specified in the data field to the web element which already has some text.
Inputs :
Locator type and its value*
Data*
Index of the web element
Clear
It clears the text from the specified web element that has some text in it.
Inputs :
Locator type and its value*
Index of the web element
Date Picker
The Calendar Date Picker resembles a table structure, featuring rows and columns containing numerical values. To choose a particular date from the calendar, it is possible to employ generic Xpath/CSS locators within the designated locator type field.
Date Picker action type is implemented for handling Generic Calendar Date Pick.
Inputs :
Data – Enter the Date in number format from 1 to 31*
Locator type and its value*
Send Keys
It sends targeted key inputs which encompass crucial actions such as confirming (Enter), navigating downward (Down), and advancing upward (Up).
Inputs :
Key to send (Data)*
Set
It sets the value specified in the data field to the located web element.
Inputs :
Locator type and its value*
Data*
Index of the web element
Set By Coordinates
It sets the value specified in the data field at the specifed coordinates(x,y).
Inputs :
Data*
Coordinates = (x,y)*
Slider
It moves the slider to the value specified in the data field.
Inputs :
Locator type and its value*
Data*
Index of the web element
Mouse Events :
Click
It performs a click action on the specified web element.
Inputs :
Locator type and its value*
Data
Index of the web element
Click By Coordinates
It performs a click action at the specified coordinates (x,y) provided within the data field.
Inputs :
Coordinates* - (x,y)
Double Click
It performs double click action on the specified element.
Inputs :
Locator type and its value*
Data
Index of the web element
Drag and Drop
It performs a click action on the specified From web element, then proceeds to drag and drop it at the specified To web element.
Inputs :
From locator type and its value*
To locator type and value*
Index of the web element
Highlight
It highlights the specified web element.
Inputs :
Locator type and its value*
Index of the web element
Hover
It hovers on the specified web element.
Inputs :
Locator type and its value*
Index of the web element
Right Click
It performs right click action on the specified web element.
Inputs :
Locator type and its value*
Index of the web element
Scroll To
It navigates to the specified web element by scrolling.
Inputs :
Locator type and its value*
Index of the web element
Select Dropdown
It clicks on the specified dropdown web element and chooses the element containing the data specified in the data field.
Inputs :
Locator type and its value*
Data*
Index of the web element
Verifiers :
Contains
It verifies whether the specified web element contains the text specified in the data field.
Inputs :
Locator type and its value*
Data*
Index of the web element
Element Enabled
It verifies whether the specified web element is enabled on the web page.
Inputs :
Locator type and its value*
Index of the web element
Element Disabled
It verifies whether the specified web element is disabled on the web page.
Inputs :
Locator type and its value*
Index of the web element
Element Exist
It verifies whether the specified web element exists on the web page.
Inputs :
Element's locator type and its value*
Index of the web element
Element Not Exist
It verifies whether the specified web element does not exist on the web page.
Inputs :
Locator type and its value*
Index of the web element
Element Position Is
It verifies whether the specified web element is in the position specified by the value in the data field.
Inputs :
Locator type and its value*
Data – value of the position that is to be checked*
Index of the web element
Element Position Is Not
It verifies whether the specified web element is not in the position specified by the value in the data field.
Inputs :
Locator type and its value*
Data – value of the position that is to be checked*
Index of the web element
Is Blank
It verifies whether the text in the specified web element is blank.
Inputs :
Locator type and its value*
Index of the web element
Is Visible
It verifies whether the specified web element is visible.
Inputs :
Locator type and its value*
Index of the web element
Verify Attribute
It locates the specified web element, and the verifies whether the property specified in the Property field has the value specified in the data field
Inputs :
Locator type and its value*
Data* - value of the attribute that is to be checked
Index of the web element
Example :
It locates the web element with attribute Name having the value 'username' and subsequently confirms if the Placeholder attribute contains the value 'Username'.
Verify Attribute Is Not
It locates the specified web element, and the verifies whether the property specified in the Property field does not have the value specified in the data field
Inputs :
Locator type and its value*
Data* - value of the attribute that is to be checked
Index of the web element
Verify Downloaded File Name/Type
It verifies both the name and extension of the downloaded PDF file.
Inputs :
File Name - This field takes the name of the file which has been downloaded in the previous step.
(Format - . eg : userdocument.pdf)*
Verify Downloaded PDF Content
It verifies the downloaded PDF file's name and also checks whether the text specified in the data field is present inside the pdf.
Inputs :
File Name* - This field takes the name of the file which has been downloaded in the previous step.
(Format - . eg : userdocument.pdf)
Data* - This field takes the data which has to be verified on the PDF.
Verify Greater Than
It verifies whether data captured from the element field is greater than the data value specfied in data field.
Note : If the element captured is not a ‘Number’, then there will be error and the step status would be FAIL
Inputs :
Locator type and its value*
Data*
Index of the web element
Verify Less Than
It verifies whether data captured from the element field is less than the data value specfied in data field.
Note : If the element captured is not a ‘Number’ , then there will be error and the step status would be FAIL
Inputs :
Locator type and its value*
Data*
Index of the web element
Verify Not Null
The data captured from locator and locator value will go through a null check and empty string check (since most the cases, for element with no data, the data returned is empty string)
If the data proves to be valid (not null) then the step is going to PASS.
Inputs :
Element's locator type and its value.*
Verify PDF Content
Verifying PDF Content via Email:Forward the email containing the PDF attachment to the Qyrus mailbox: qyrustestautomation@outlook.com.
The content of the PDF will be verified based on the instructions provided.
Inputs :
Data* - The text/content which has to be verified.
If there are multiple texts which have to be verified the format is as shown below || i.e the verification texts must be separated by ‘||’.
Email Subject*- The subject of the email will be used to identify the mail with the PDF attachment.
PDF Title* - The title of the PDF is used to identify the specific PDF for verification. If there are multiple PDFs, use the PDF title to select the correct one. If the PDF title is not available, the title will be searched within the content of the PDF for identification.
It's recommended to provide a unique and precise PDF title for accurate identification. This helps in cases where there might be multiple PDFs.
Verify Regular Expression
The data captured from locator will be matched with the regular expression ,a regex pattern is generated from the regular expression provided by the user.
Inputs :
Locator type and its value*
Data*
For Example:
Email
^([a-zA-Z0-9_-.]+)@([a-zA-Z0-9_-.]+).([a-zA-Z]{2,5})
Matches : user@domain.com, user1997@domain.info, so on and so forth.
Does not match : user1997, username321 so on and so forth.
URL
https?://(www.)?[-a-zA-Z0-9@:%.+~#=]{1,256}.[a-zA-Z0-9()]{1,6}\b([-a-zA-Z0-9()@:%+.~#?&//=]*)
Matches : https://google.co.in, www.facebook.com
UUID
[a-zA-Z0-9]+
Matches any number (integer, decimal).
Verify Remote File Contain
It validates the downloaded file's name and checks whether the data specified in the data field is contained within the file(.text, .docx, .pdf).
Inputs :
File Name* - This field takes the name of the file which has been downloaded in the previous step.
(Format - . eg : userdocument.pdf)
Data* - This field takes the data which has to be verified on the downloaded file.
Verify Text
It verifies whether the text of the specified web element has the same value specified in the data field.
Inputs :
Locator type and its value*
Data*
Index of the web element
Verify Text Present
It verifies whether the text is present on the specified web element.
Inputs :
Locator type and its value*
Data
Index of the web element
Verify Title Contains
It verifies whether that the title of the web page contains the value specified in the data field.
Inputs :
Data*
Index of the web element
Verify Title Is
It verifies whether that the title of the web page is the value specified in the data field.
Inputs :
Data* – the text you want to verify
Index of the web element
Verify Title Is Not
It verifies whether that the title of the web page is not the value specified in the data field.
Inputs :
Data *
Index of the web element
Verify URL
It verifies whether that the URL of the web page is the value specified in the URL field.
Inputs :
URL* – the url to be verified should be entered in this field
Verify Webtable With Excel
It verifies the excel downloaded and the sheets on that particular excel.
Inputs :
File Name* - This field takes the name of the file which has been downloaded in the previous step.
(Format - . eg : userdocument.pdf)
Sheet Name* - This field takes the excel sheet name
Locator Xpath* - This field takes the xpath of the webtable need to be verified
Waits :
Note: The maximum allowable waiting duration for all types of wait actions is 120 seconds.
Wait Until Alert Is Present
It waits for a certain period of time until an alert dialog is detected on the page.
Inputs :
Duration(seconds)*
Wait Until Element Is Clickable
It waits for a certain period of time until the specified element becomes both visible and enabled for interaction.
Inputs :
Duration(seconds)*
Locator type and its value*
Index of the web element
Wait Until Title Is
It waits for a certain period of time until the actual title of the browser tab matches the expected title.
Inputs :
Duration(seconds)*
Title*
Wait Until Url Is
It waits for a certain period of time until the actual URL in the browser matches the expected URL.
Inputs :
Duration(seconds)*
URL*
Wait Until Element Is Visible
It waits for a certain period of time until the specified element becomes visible on the page.
Inputs :
Duration(seconds)*
Locator type and its value*
Index of the web element
Wait
It waits for a specific amount of time.
Inputs :
Duration(seconds)*
Wait For Element
It waits for a certain period of time until the specified element becomes visible on the page.
Inputs :
Duration(seconds)*
Locator type and its value*
Index of the web element
Windows :
Attach
It navigates to the browser tab specified in the data field.
Inputs :
Data* – The tab to which you intend to redirect.
Close Window
It closes the current active window.
Maximize
It Maximizes the window.
Refresh
It refreshes the page.
Screen Dimension
It changes the dimensions of the window specified in the data field.
Inputs :
Dimensions*
Set Default Content And Set Parent Frame
In scenarios where the tested application involves multiple nested frames, users manage this complexity through the utilization of the "Set Frame" user action. This action facilitates transitioning the control across various frames. Subsequently, if the need arises to navigate back to the immediate parent frame within this nested structure, the Set Parent Frame user action comes into picture.
If the user wants to switch the control to the main HTML DOM of the page user can use the Set Default Content user action.
Set Frame
It sets the frame to which the interacting element exists.
Inputs :
Element's locator type and its value
Index of the web element
Data
Zoom In
It zooms in the browser window.
Zoom Out
It zooms out the browser window.
Zoom Reset
It restores the browser view to its default zoom level.
Zoom Level
It enables the user to establish a customized zoom level, with the option to extend it up to 500%.
Inputs :
Data*
WEBTABLE :
Click On WebTable Element
It clicks checkboxes or clickable fields in a row by providing associated text or number in the Data field, genericTrTag Type and its value, genericLocatorTypeFor Column and its value.
Inputs :
Data*
genericTrTag Type and its value*
genericLocatorTypeFor Column and its value*
Verify WebTable Element Text :
It verifies an Element against another Element within the same row by providing associated text or number in the Data field, genericTrTag Type and its value, genericLocatorTypeFor Column and its value.
Inputs :
Data*
genericTrTag Type and its value*
genericLocatorTypeFor Column and its value*
AI :
Click By Image
If the uploaded image is located on the web page, then it clicks on the uploaded image element.
Inputs :
Uploaded image of element
Set By Image
If the uploaded image is located on the web page, then it inputs a text into the web element specified in the uploaded image.
Inputs :
Uploaded image of element*
Verify By Image
If the uploaded image is located on the web page, then it verifies if the image uploaded is present on the web page.
Inputs :
Uploaded image of element*
Verify Screen
It compares the uploaded image with the current screenshot of the browser and highlights the differences if there are any.
It has an option to select two types of screenshots to take from the web browser : ‘Viewport’ and ‘Full Page’.
Using Viewport, the screenshot captured would be the ‘visible’ area of the screen while browsing normally on it.
Using Full page, the screenshot captured would be the entire page’s content from the starting to the end of the scrollable page.
Browsers Supported:
Chrome - Latest version of Chrome, might have few issues while capturing full page (Sticky header and Sticky footer issue) and issues with scrollable elements.
Firefox - Full support for capturing full page screenshot without sticky header.
Edge - Scroll and stitch support (May include sticky header and footer).
Safari - Scroll and stitch support (May include sticky header and footer).
Inputs :
Image to be compared*
Last updated