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.