NLP Reference
Windows, Tabs, and Alertsβ
Launch a Websiteβ
This is usually the first step in a test case, but you can also add this step during the course of a test if you need to open a different website.
Go to...
Go to
Go to page
Go to site
Go to web page
Go to website
Launch...
Launch website
Navigate...
Navigate
Navigate page
Navigate site
Navigate to
Navigate to page
Navigate to site
Navigate to website
Navigate web page
Navigate website
Open...
Open page
Open site
Open web page
Open website
Switch to Tab or Windowβ
This command moves focus to another window or tab.
Switch to...
Switch to 2nd tab
Switch to 2nd window
Switch to 3rd tab
Switch to 3rd window
Switch to new tab
Switch to new window
Switch to original tab
Switch to original window
Switch to window with title [title1]
Switch to Alert, Confirm, or Promptβ
An alert, confirm, or prompt window is different from a normal window, and the Switch to...
window commands will not work.
When an alert window is encountered, a variable will be created win variables as
alert_message
. This variable can then be used to verify specific messages, if needed.
Switch to alert...
Switch to alert and click on accept
Switch to alert and click on cancel
Switch to alert and click on leave
Switch to alert and click on ok
Switch to alert and click on stay
Switch to alert and save message as alert_set1 and click ok
Switch to confirm...
Switch to confirm and click on accept
Switch to confirm and click on cancel
Switch to confirm and click on leave
Switch to confirm and click on ok
Switch to confirm and click on stay
Switch to prompt...
Switch to prompt and click on accept
Switch to prompt and click on cancel
Switch to prompt and click on leave
Switch to prompt and click on ok
Switch to prompt and click on stay
Set Screen or Window Sizeβ
If a window is not displaying at the correct size, you can use the Set screen size
commands at the beginning of the test case.
Set...
Set screen size - [width] * [height]
Set window size - [width] * [height]
Click, Press, and Selectβ
Click...
Click _css{"[selector]"}
Click {xpath: "[address]"}
Click on [exact attribute value]
Note: Attribute values are not case sensitive.Click on radio next to [text]
Click on [text]
Click on [text] after [text]
Click on [text] before [text]
Click on [text] for [text]
Note: This is useful when there are multiples of the same button, but there are unique identifiers for each.Click on [text] radio
Click on [text] radio for [text]
Click on _xy{x, y} of _css{some_html_node_id}
Note: The x, y coordinates are the location on the page of an HTML node.Click on _xy{x, y} of _xpath{β[//img]β}
Note: The x, y coordinates are the location on the page of an image, and the text is the image name.
Double Click...
Double Click on _xy{x, y} of [text]
Press...
Press _css{"[selector]"}
Press {xpath: "[address]"}
Press on radio next to [text]
Press on [text] radio
Press on [text] radio for [text]
Select...
Select _css{"[selector]"}
Select [text]
Example:Select country
Note: In the example, "country" is the name of a dropdown.Select [text] from [text]
Example:Select united states from country
Select {xpath: "[address]"}
Hoverβ
In order to capture the full page screenshot of the application, AutonomIQ captures multiple screenshots of the page and stitches them together. During this process, the page gets scrolled up and down to capture screenshots of different sections of the page. This might cause certain types of modals/pop-ups that might be on the page to automatically close. Using Hover...
will freeze the page and prevent popups from closing when scrolled.
Hover on...
Hover on _css{β[selector]β}
Hover on _xy{x, y} of _xpath{//img[@id=βsome_html_node_idβ]}
Hover on {xpath: β[address]β}
Hover on [text]
Hover over...
Hover over _css{β[selector]β}
Hover over {xpath: β[address]β}
Hover over [text]
Enter, Type In, and Fill Inβ
Enter...
Enter [textbox]
Example:Enter username
Enter text in _css{β[selector]β}
Enter text in {xpath: β[address]β}
Enter text in [text]
Enter [textbox] and save as xyz
Fill in...
Fill in [textbox]
Fill in text in _css{β[selector]β}
Fill in text in {xpath: β[address]β}
Fill in text in [text]
Set text in...
Set text in _css{β[selector]β}
Set text in {xpath: β[address]β}
Set text in [text]
Type in...
Type in [textbox]
Type in text in _css{β[selector]β}
Type in text in {xpath: β[address]β}
Type in text in [text]
Download file...
β
The Download file by clicking on β[download_label]β
action will insert a Get Downloaded File button next to the respective test step. The file will download to the user's local machine.
The default timeout for a file download to start is five minutes, but it can be modified by using the --downloadTimeout [seconds]
action.
Exampleβ
Download file by clicking on "text" --downloadTimeout 600
Once a download starts, the system will wait 30 minutes for it to complete.
You can also modify the download timeout on the Variables tab with the download_complete_timeout
variable. (See Variables for more information.)
Exampleβ
Variable: download_complete_timeout
Value: [minutes]
Upload file to...
β
The Upload file to...
actions will upload a specified file to a specified location.
File download and upload are supported on the following browsers:
- Chrome (local and remote)
- Firefox (local and remote)
- Edge (remote) β Supported on the latest Chromium Edge browsers
Upload file to...
Upload file to _css{β[selector]β}
Upload file to [text]
Upload file to {xpath: β[address]β}
Assert and Verifyβ
Using Assert
will cause the test case to fail and stop at the failed step. Using Verify
will cause the test step to fail, but the execution will continue to the next step.
Assert...
Assert [text] is visible on the page
Assert image of βtextβ, βtextβ is one the page
Verify...
Verify _css{β[selector]β} begins with [text]
Verify _css{β[selector]β} begins with [text] or begins with [text]
Verify _css{β[selector]β} begins with [text] or ends with [text]
Verify _css{β[selector]β} contains [text]
Verify _css{β[selector]β} contains [text] or begins with [text]
Verify _css{β[selector]β} contains [text] or contains [text]
Verify _css{β[selector]β} contains [text] or ends with [text]
Verify _css{β[selector]β} ends with [text]
Verify _css{β[selector]β} ends with [text] or ends with [text]
Verify _css{β[selector]β} is _css{β[selector]β}
Verify _css{β[selector]β} is disabled
Verify _css{β[selector]β} is enabled
Verify _css{β[selector]β} is not visible
Verify _css{β[selector]β} is visible
Verify [text] is on the page
Note: Can be used to wait until an element is loaded on the screen. Once it is loaded, the validation continues. If the element is not loaded within the timeout duration, the validation will fail and an error message will state that the element was not found. By default, the timeout is 8 seconds, but you can modify it:Verify [some text] is on the screen --timeout 30
Verify {xpath: β[address]β} background-color is #ffffff
Verify {xpath: β[address]β} begins with [text]
Example:Verify {xpath: "[//img[@class='gb_Wa']"} begins with [google]
Verify {xpath: β[address]β} begins with [text] or begins with [text]
Verify {xpath: β[address]β} begins with [text] or ends with [text]
Verify {xpath: β[address]β} color is [#e01719]
Note: Any CSS attribute value can be validated using the xpath of the element (width, height, font-family, text-align, font-size, display, color, background-color, etc.).
Example:Verify {xpath: "[//img[@class='gb_Wa']"} color is [#e01719]
Verify {xpath: β[address]β} contains [text]
Verify {xpath: β[address]β} contains [text] or begins with [text]
Verify {xpath: β[address]β} contains [text] or contains [text]
Verify {xpath: β[address]β} contains [text] or ends with [text]
Verify {xpath: β[address]β} ends with [text]
Verify {xpath: β[address]β} ends with [text] or ends with [text]
Verify {xpath: β[address]β} font-size 26px
Verify {xpath: β[address]β} is {xpath: β[address]β}
Verify {xpath: β[address]β} is disabled
Verify {xpath: β[address]β} is enabled
Verify {xpath: β[address]β} is not visible
Verify {xpath: β[address]β} is visible
Verify ${var_name} is on the screen
Note: Used to verify if a saved variable exists on the screen.Verify ${var_name} on the page
Note: Used to verify if a saved variable exists on the page.Verify alert is exists
Verify new tab exists
Verify new window exists
Note: Used to check if a new window appears.Verify pop up is exists
Note: Used to check if a new pop-up appears.Verify tab is exists
Note: Used to check if a new tab appears.Verify the current url is [url]
Note: Used to verify the URL of the current window when a user navigates to another URL or window.
Example:Verify the current URL is https://www.test.com/
Verify url is [url]
Verify variable ${var_name$} is [text]
Note: Verify if a saved variable matches with some text. Can also be used to verify the value saved for a variable.
Example:Verify variable $${variableName$} is [someText]
Verify window is exists
Conditional Actionsβ
Conditional actions are executed if certain conditions are true, and can be used instead of verify
if additional actions are to be performed after the initial action.
if...
if {xpath: β[address]β} is visible, click on [exact attribute value]
if [condition], continue
if [condition], run block [block_name]
if current url is [url], enter [text]
Example:if current url is https://www.wikipedia.org/, click on English
Looping Actionsβ
Blocksβ
Blocks can be used to loop through commands as many times as required.
Begin...
Begin block [block_name]
Begin script _bash with $${var_name$}
Begin script _js with $${var_name$}
Begin script _py with $${var_name$}
run...
run $${block_name$} for [number] times
run $${block_name$} for [number] rows
run $${block_name$} for all rows
run $${block_name$} until [text] on the screen
Exampleβ
begin block <block_name>{instruction1}{instruction2}...end block
run ${block_name} for {number} times
To run through multiple data sets for input in each loop, use separate data files with multiple data. After uploading the data file, link it to the relevant test case. In the following example, each row of data will correspond to an iteration of the loop.

Nested Blocksβ
Nested blocks are blocks within blocks. You can have a single or multiple levels of nesting blocks.
Exampleβ
Run ${block1} for all rows
Begin block block1
enter username
enter password
Run ${block2}
Begin block block2
enter username
enter password
end block
end block
Flowsβ
Flows are similar to methods or functions, in which a user can create a block of code that can be reused across test cases. Flows can also be nested inside blocks.
Run $${flow_name$}...
Run $${flow_name$} for [number] times
Run $${flow_name$} for all rows
Decision-Making Actionsβ
Decision-making actions can only be used with block and flow actions.
if...
β
An if
action is used to decide whether a certain action or block of actions will be executed.
if...
if {xpath: β[address]β} is visible, click on [exact attribute value]
if [condition], continue
if [condition], run block [block_name]
if current url is [url], enter [text]
Exampleβ
if {xpath: β//a[@class=βpage-title-actionβ]β} is visible, run ${Create_User} for all rows
Begin block Create_User
click βAdd Newβ
enter βUsernameβ
enter βFirst Nameβ
enter βLast Nameβ
click on createusersub
end block
If the given xpath is visible, the user will be created.
if...else...
β
In an if...else...
action, if a condition is true, a block of statements will be executed; if the condition is false, the else part will be executed.
Exampleβ
if {xpath: β//select[@id=βrolleβ]β} is visible, run ${subscribe}
else, run ${Help}
Begin block Help
click on βHelpβ
end block
In this example, the if
condition is not satisfied so the else
part is executed.
Nested if...
Actionsβ
if...else...
actions can be nested inside other if or else actions.

else...if...
β
The else...if...
(or elif
) statement is useful when you need to check multiple conditions, or to avoid nesting if...else...
blocks.
Syntaxβ
if (condition1) run ${block1}
//These statements would execute if the condition1 is true
elif(condition2) run ${block2}
//These statements would execute if the condition2 is true and condition1 is
False
End block
Else, run ${else_block}
//These statements would execute if all the conditions return false
End block
End block

In this example, if the condition is not satisfied and block login1
is not executed, then the control moves to the elif
action. Here the condition is satisfied and block login2
is executed.
Data-Driven Parsingβ

In this example, run${block1} for all rows
will iterate through all rows in the data file. When the condition matches the current row, only that if block
will be executed. Any subsequent elif
/else
actions wonβt be executed, as well as any conditions that do not match.
if...continue...
β
In an if...continue...
action, when the if
condition is satisfied, the control jumps to the beginning of the loop for the next iteration.
Wait Actionsβ
Wait...
Wait [number] secs
Wait for [number] seconds
Wait for [number] secs
Wait until _css{β[selector]β} is exists
Wait until _css{β[selector]β} is visible
Wait until {xpath: β[address]β} is exists
Wait until {xpath: β[address]β} is visible
Wait until [text] is exists
Wait until [text] is visible
Upload Actionsβ
Files should be uploaded to the Artifacts section.
Upload...
Upload file to _css{β[selector]β}
Upload file to [text]
Upload file to {xpath: β[address]β}
Screenshot Actionsβ
Take screenshot
Capture screenshot
Table Instructionsβ
The following action works for HTML tables with simple table-tr-td
tags, not nested. It identifies the cell below the first column for which the value of the second column matches.
Action on "FirstColumnName" Where SecondColumnName [operator] SecondColumnValue
Click on...
β
Examples with different operators:
Click on "Move" Where Winning % is 55.71
Click on "Black" Where Black Elo is not undefined
Click on "White" Where White Elo greater than 2700
Click on "Move" Where Winning % lesser than 55
Click on "White" Where White Elo begins with I
Click on "Wins" Where Move starts with g
Click on "Black" Where Date ends with ?
Click on "White" Where Date contains 1994
Click on "White" Where White Elo != undefined
Click on "Move" where Winning % > 55
Click on "Move" Where Winning % < 55
Click on "Move" Where Winning % <= 55
Click on "Move" Where Wins >= 70060
Click on "Move" Where Wins = 70060
Enter text...
β
In the following example, βReviewβ is the column name.
Enter text in "Review" Where Location is Austin
Click on radio...
β
In the following example, βNoβ is the column name.
Click on radio in "No" Where Location is Austin
Click on checkbox. . .β
In the following example, βChooseβ is the column name.
Click on checkbox in "Choose" Where Name is Anki
Dropdown Selectionβ
In the following example, βBooksβ is the column name, and the value to choose is designated in test data.
Choose "Books" Where Name is SKM
In the following example, βThe Shiningβ is the value in the dropdown. The column in which this comes up does not need to be specified.
Choose "The Shining" Where Name is Anki
Click/Enter Text Based on Row Numberβ
Examplesβ
Click on "Move" Where row is 3
Click on "Move" Where row is last
Get the Table Row Countβ
This will return the count of the number of rows in the table.
Exampleβ
Get table row count as variable_Name