Skip to main content

Glossary and concepts

Agent

An agent in AIVA is a single, independent automated browser instance that executes your tests. Each agent runs in the cloud and behaves like a real user: it loads pages, interacts with elements, fills forms, runs assertions, and records video of the entire session.

Think of agents as the “workers” in the system. When you run a single test, it consumes one agent for the duration of that test. When you run a batch in parallel, AIVA spins up multiple agents so that your tests can execute truly in parallel rather than one after another. The more agents your plan includes, the faster large batches complete.

Assert / Assertion

An assertion is a test step that verifies a condition. Assertions are how a test actually decides if something passed or failed, so most tests include at least one (typically at the end).

AIVA supports text assertions (checking if specific text is present, or checking that it is absent, at a location) and image assertions (e.g., verifying icons, colors, or UI elements). For more information about assertions visit How to use asserts to verify the expected result

Batch

A batch is a group of tests executed together as a single unit. In AIVA, you can choose which tests to include in two main ways:

  • Pick specific tests directly from the Tests page.
  • Go to the Batch Runner page and select one or more labels to automatically include all tests that have those labels.

Once you've chosen the tests, you run the batch either sequentially (one test after another) or in parallel (several at a time, running on multiple agents). This makes it easy to run just a few hand-picked tests, a whole category via labels, or everything at once.

Element

An element is anything that AIVA should locate on the tested page and perform an action on (e.g. click, hover or assert). Typically a menu item, a button, an input field, a link, an error message, an icon, etc.

Gateway

AIVA runs in the cloud and can access any publicly available website or web app by default. If your application is not publicly reachable, you need a gateway to allow AIVA to reach it. Common scenarios include:

  • Your app runs on localhost (your computer)
  • Your app is hosted on a private company network
  • Your app is behind a firewall and not accessible from the internet

For more information about gateways visit How to access local applications.

Gateway Client

A gateway client is a lightweight application that you install on your computer or network. It securely connects AIVA to your private environment so tests can run on non-public apps.

Label

A label is a simple tag you can attach to any test to help you organize and find things quickly (for example “signup”, “checkout”, “smoke”, “regression”, “admin-only”, or “customer-portal”). A single test can have as many labels as you want. You can use labels also for running tests in batches. For more information visit How to organize tests using labels.

Module

A module is a reusable subset of steps that you can drop into any regular test — perfect for steps you have to repeat over and over, like logging in, setting up test data, or navigating to a deep page. For more information about modules, when and how to use them, visit How to make your life easier with modules.

Regression test

A regression test checks that new changes or fixes haven’t accidentally broken things that were already working.

Whenever you add a new feature or fix a bug, you run your regression tests to make sure the old stuff still behaves correctly. These tests tend to be more detailed and cover many different parts of the app. Most teams keep a big “regression” batch (often using the “regression” label) that they run before releasing to production.

Setup and teardown

Often, tests need to perform some steps at the beginning to prepare some data (called setup), and some at the end to clean up after the test (called teardown). These steps are not really part of the test itself:

  • Their failure doesn’t indicate a bug was found in the tested feature.
  • These steps are often shared between multiple tests.
  • The teardown should be executed even if the test itself failed, to make sure the tested app is returned to a defined state. If these were simply additional steps at the end of the test, they would not be reached in the event of a test failure.

Soon, AIVA is going to support this functionality directly. In the meantime, a workaround is suggested in How to design reliable tests.

Smoke test

A smoke test is a quick, broad check to confirm that the most important parts of your app are working at all.

Think of it like turning on a new lamp to see if it lights up before you worry about the dimmer or color settings. Smoke tests usually cover basic flows (e.g., “Can I open the homepage? Can I log in? Can I create a new item?”). They’re perfect to run after every deployment or several times a day because they’re fast and catch big breakages early.

Test

A test in AIVA is a complete, end-to-end check of one specific thing your app should do — like “a new visitor can sign up”, “a logged-in user can place an order”, or “the password-reset flow works”. It’s simply an ordered list of steps that AIVA follows from top to bottom: open a page, click buttons, fill forms, wait for things to appear, check that expected text is visible, etc.

Best practice (but not required): keep each test focused on one clear scenario. That way, when something breaks, you immediately know exactly what’s wrong. For more information about tests and test design visit How to design reliable tests.

Test Result

A test result is the record of how AIVA executed a test. It includes:

  • The steps performed
  • Variable values used
  • Execution time and duration
  • Pass/fail status
  • Information about fail reason — error message, screenshots, other details
  • Video recording of the execution (note: videos are retained only for a limited time)
  • The test result of a module used within the test, if applicable

A test fails if:

  • An explicit assertion does not hold true (e.g., an expected message didn’t appear, or an unwanted error message did)
  • AIVA cannot execute a step (e.g., AIVA should click an element but it is missing, or a page doesn’t load at all)

For example, a test might fail if a ‘Login successful’ message never appears, or if the login button can’t be found at all.

Test step

A step is a single instruction you give AIVA inside a test. A test is nothing more than an ordered list of steps that AIVA follows from top to bottom. You build tests by recording yourself performing the test case, while AIVA records it as a series of steps. Later, you can edit a test either by re-recording a part of it, or by adding, deleting, or tweaking individual steps.

Examples of steps are: “Go to this URL”, “Click the Sign-in button”, “Type [email protected]”, or “Check that this area on the page does not contain the text ‘Error’”.

Variable

A variable is a named placeholder in a test that lets you run the same test with different values — and reuse those values across multiple steps without retyping them. For more information about variables visit How to parametrize tests.

Workspace

A workspace in AIVA is your private, completely isolated environment where all of your team’s (or your personal) testing activity lives. It contains your tests, modules, test results, batches, gateways, and team members.

Everything you do in AIVA happens inside a specific workspace, and workspaces are fully separated from one another — nothing is ever shared or visible across them. You can be invited to multiple workspaces (for example, one for your company, one for a client, or a personal playground), and you switch between them using the workspace switcher in the top-right corner of the app. Most users have just one workspace.