After running bugster init, you can enhance your configuration with advanced settings for more sophisticated testing scenarios.

All advanced configurations are made by editing the .bugster/config.yaml file in your project directory.

Configuration File Structure

Your basic config.yaml file structure:

project_name: "My App"
project_id: "my-app-123456"
base_url: "http://localhost:3000"
credentials:
  - id: "admin"
    username: "admin@example.com"
    password: "admin123"
# Advanced settings go below

Vercel Protection Bypass

If you want to run Bugster in your Vercel previews, configure the bypass key:

Setup

  1. Get your bypass key from your Vercel project settings
  2. Add to your config file:
project_name: "My App"
project_id: "my-app-123456"  
base_url: "http://localhost:3000"
credentials:
  - id: "admin"
    username: "admin@example.com"
    password: "admin123"
x-vercel-protection-bypass: "your-bypass-key-here"

How it works

  • Bugster automatically appends the bypass parameters to your application URLs
  • Works with both production and preview deployments
  • Enables testing on password-protected Vercel deployments

Vercel Setup Guide

Detailed guide for setting up Vercel integration and protection bypass

Always Run Tests

Configure specific tests to always execute, regardless of test limits or filtering:

Configuration

Add the preferences section with always_run tests:

project_name: "My App"
project_id: "my-app-123456"
base_url: "http://localhost:3000"
credentials:
  - id: "admin"
    username: "admin@example.com" 
    password: "admin123"
preferences:
  tests:
    always_run:
      - "auth/1_login.yaml"
      - "critical/payment_flow.yaml"
      - "smoke/homepage.yaml"

Rules and Limits

Use Cases

  • Critical user flows: Login, checkout, signup processes
  • Smoke tests: Basic functionality validation
  • Regression prevention: Tests for previously fixed bugs

Multiple Testing Credentials

Configure different user personas and roles for comprehensive testing:

Adding Multiple Credentials

project_name: "My App"
project_id: "my-app-123456"
base_url: "http://localhost:3000"
credentials:
  # Admin user with full permissions
  - id: "admin"
    username: "admin@example.com"
    password: "admin123"
  
  # Regular user for standard flows
  - id: "user"
    username: "user@example.com"
    password: "user123"
    
  # Billing user for payment testing
  - id: "billing"
    username: "billing@example.com"
    password: "billing123"
    
  # Premium subscriber
  - id: "premium"
    username: "premium@example.com"
    password: "premium123"

Credential Properties

Common User Personas

Admin User

Purpose: Test administrative functions

Access: Full system permissions

Use cases: User management, system settings, analytics

Regular User

Purpose: Test standard user workflows

Access: Basic user permissions

Use cases: Profile management, content creation, basic features

Billing User

Purpose: Test payment and subscription flows

Access: Billing and payment permissions

Use cases: Subscription management, payment processing, invoicing

Premium User

Purpose: Test premium/paid features

Access: Enhanced feature access

Use cases: Premium features, advanced functionality, exclusive content

Complete Example Configuration

Here’s a comprehensive configuration example with all advanced features:

project_name: "My SaaS App"
project_id: "my-saas-app-123456"
base_url: "http://localhost:3000"

# Multiple user credentials for different personas
credentials:
  - id: "admin"
    username: "admin@myapp.com"
    password: "admin123"
  - id: "user"
    username: "user@myapp.com"
    password: "user123"
  - id: "premium"
    username: "premium@myapp.com"
    password: "premium123"

# Vercel protection bypass
x-vercel-protection-bypass: "my-secret-bypass-key"

# Test execution preferences
preferences:
  tests:
    always_run:
      - "auth/1_login.yaml"
      - "critical/2_signup.yaml"
      - "smoke/1_homepage.yaml"

Common Issues

Best Practices

Security

  • Use dedicated test accounts, never production credentials
  • Rotate test credentials regularly

Organization

  • Use descriptive credential IDs that match user roles
  • Group related test credentials logically
  • Document credential purposes in team documentation
  • Keep always-run tests focused on critical paths

Maintenance

  • Review and update credentials when user roles change
  • Validate configuration after major app updates
  • Test credential authentication periodically
  • Update bypass keys when they rotate

Next Steps