Core Concepts

Understanding Bug0's core concepts will help you create effective, maintainable tests.

Hierarchy Overview

Workspace
└── Projects
    └── Test Suites
        └── Test Cases
            ├── Steps (Draft / Published)
            └── Assertions

Key Concepts

Workspaces

A workspace is your team's container. It holds:

  • Team members with roles (owner, member)
  • Projects belonging to your organization
  • GitHub integrations at the organization level

When you sign up, a default workspace is created. You can invite team members via email.

Projects

A project represents a single application or service you're testing. Each project has:

  • Base URL - Where tests navigate to (e.g., https://staging.myapp.com)
  • Settings - Default authentication credentials, storage state
  • Integrations - GitHub, Slack, email notifications
  • API Keys - For triggering tests from CI/CD

Test Suites

A test suite groups related test cases. Suites can be:

  • Regular suites - Standard test grouping
  • Login suites - Execute first, save authentication state
  • Cleanup suites - Execute last, clean up test data

Suites can override project settings (base URL, credentials).

Test Cases

A test case is a single test scenario containing:

  • Steps - Actions the AI performs
  • Assertions - Conditions to verify at the end
  • Status - Draft or active

Steps

Steps are natural language instructions the AI executes:

  • "Click the login button"
  • "Enter email in the input field"
  • "Wait for the dashboard to load"

Steps can have:

  • Data - Input values (static or dynamic placeholders)
  • Wait Until - Conditions to verify before proceeding

Assertions

Assertions verify the test outcome:

  • "User should be logged in"
  • "Shopping cart should show 3 items"
  • "Error message should not be visible"

AI evaluates assertions contextually using screenshots and page state.

Draft vs Published

Test cases have two sets of steps:

  • Draft - Work in progress, editable
  • Published - Used in CI/CD runs

This separation lets you iterate on tests without affecting production pipelines.

Learn More