Actions

When you manually add steps, first you need to choose a type of step.

There are two basic types of steps:

Action types available for a step

Actions - detailed descriptions & tips

Mouse actions - details

Click

When you want to click a specific element.

This is the most common action for navigating the web. This also serves as a "tap" action if you test mobile resolutions.

Click parameters

Parameters:

  • Position (default: Smart detection) - By default, BugBug utilizes its own mechanism to calculate the correct x,y position for clicking on the given element (selector). If you wish, you can modify this parameter and choose where to click (Top Left, Top Center, Top Right, Left, Center, Right, Bottom Left, Bottom Center, Bottom Right).

  • Modifier keys (default: None) - If you need to click with an extra keyboard modifier, it's possible to set it here (Ctrl, Shift, Alt, Meta / Command).

Double click

When your app has a specific interaction, such as a double-click, for example, to open a file.

Right click

When your app has a custom context menu on right-click.

Hover

Examples when to use it:

  • Navigation bar with menus that appear on mouseover

  • Cart preview that appears on hover

  • Actions that only appear when you move your mouse over a table row

Scroll

When you need to force BugBug to scroll to specific coordinates.

Usually, you don't need to add it manually, because BugBug handles the scroll automatically.

Drag&Drop (BETA)

When your app has a slider that is interacted with by a drag-and-drop interaction.

Press mouse button

This action will initiate the mouseDown event.

You can use it in combination with "hover" and "Release mouse button" to simulate drag & drop from one element to another element.

Release mouse button

Release the mouse button (mouseUp) on a specific element.

Input actions - details

Type text

Type text into input, textarea or contenteditable fields. Simulates keyboard presses, entering characters one by one.

To escape text like {{ }}, you must put it between {% raw %} and {% endraw %} blocks.

Example: This is not a {% raw %}{{not_a_variable}}{% endraw %}

Select option

Chooses a specific option in a native HTML select dropdown (also called "combobox" menu).

Clear input

Removes all characters from a text input field, textarea or contenteditable .

Change value

Sets a value of any form element. HTML has many form controls, and some of them can be set to a specific value, for example, radio groups. Technically, a JS "change" event is triggered and the value is updated immediately, without typing letter by letter. Use it for typing longer texts.

Upload file

Simulates the "choose file" action in a form type file for uploading in forms. You can customize the file that will be uploaded.

Paste from clipboard

This step simulates the paste action (Ctrl+V) that the user can perform using the keyboard or mouse.

It's useful when you have "Copy to clipboard" actions in your app's UI and you want to use the value later in your test scenario.

Window actions - details

Go to URL

Load the given page URL.

The step is marked as passed when the browser emits the onDOMContentLoaded event.

This action doesn't verify the status of the loaded page. If the URL returns an HTTP status different than 200 (OK), for example, 404, but still loads correctly (browser emits the onDOMContentLoaded event), the step will be marked as "passed".

Parameters:

  • Password protected - If your application is behind basic auth, you can add those credentials by enabling this checkbox.

New tab

Open a new tab and load the given page URL.

This step works similarly to Go to URL, but opens in a new tab.

Close tab

Close the current, active tab. Focus will be switched to the previous tab.

If the browser has only one active tab, the browser will be closed and the test will be stopped.

Reload page

Reload the page. Nothing less, nothing more.

This step is helpful if you expect that the previous step changed something in the app, but your app is not refreshing automatically (i.e., an asynchronous action).

Advanced actions - details

Set variable

This action can be used to store local variables from tested sources. You can use a selector to find a text value on the tested web application. Now you can store any text value from the tested web page in a variable and use it in feature steps. For example, to find out newly registered unique users in your CRM. This variable is also cross-domain.

For more detailed information, check out "Variables during recording".

Switch context

You can use this action for working with iframes or multiple tabs.

Run custom JavaScript

Answer a prompt

Accept or decline browser alerts initiated by alert(), confirm() or provide a custom text answer for a browser prompt().

This action is automatically recorded, and most of the time you don't need to edit it manually.

  • To confirm the window prompt, enter true in the answer field.

  • To reject enter false.

  • For prompt() questions, enter a custom text that should be provided as an answer

Last updated

Was this helpful?