Getting Started
Do I need to install Docker or a CLI tool?
Do I need to install Docker or a CLI tool?
Can I export tests from Keystone?
Can I export tests from Keystone?
- Playwright: Export as TypeScript or JavaScript test files
- Cypress: Generate Cypress test specs with proper selectors
- Raw JSON: Export test steps as structured data for custom integrations
How long does it take to set up Keystone?
How long does it take to set up Keystone?
- Sign up with GitHub OAuth (30 seconds)
- Add your staging environment URL (1 minute)
- Record your first test flow (2-3 minutes)
- Add GitHub Action to your workflow (30 seconds)
What if my staging environment requires authentication?
What if my staging environment requires authentication?
- Basic authentication (username/password)
- OAuth 2.0 flows
- API key headers
- Custom session cookies
- SAML/SSO (for environments behind corporate SSO)
Can I try Keystone without affecting my production code?
Can I try Keystone without affecting my production code?
Test Creation & Management
How do I create tests without writing code?
How do I create tests without writing code?
- Click “Record New Test” in the dashboard
- A cloud browser opens with your staging environment
- Click through your user journey naturally
- Keystone captures every interaction automatically
- Save and name your test
How do I handle dynamic content like timestamps or user IDs?
How do I handle dynamic content like timestamps or user IDs?
- Use data attributes that don’t change (
data-testid="submit-button") - Configure healing to ignore timestamp elements
- Set up test data with consistent IDs
- Use environment-specific test accounts
Integration & CI/CD
Which CI systems does Keystone work with?
Which CI systems does Keystone work with?
- ✅ Native support: GitHub Actions (recommended)
- ✅ REST API: CircleCI, GitLab CI, Jenkins, Azure DevOps
- ✅ Docker: Official runner image for any container-based CI
- ✅ Custom: Direct API integration for proprietary systems
Can I run tests in parallel?
Can I run tests in parallel?
How do I stub third-party APIs?
How do I stub third-party APIs?
- We’re developing a Network Stubs panel for test recording
- This will allow capturing real API responses as HAR files
- Keystone will replay these responses during test runs
- No code changes will be needed in your application
Data & Security
What data does Keystone collect during tests?
What data does Keystone collect during tests?
- Video recordings of browser sessions
- Screenshots at key test steps
- Network traffic (HAR files)
- DOM snapshots for debugging
- Browser console logs
Where is my data stored?
Where is my data stored?
- Primary: US West 1 (N. California)
- Secondary: US West 2 (Oregon)
Migration & Importing (Beta)
Can I import tests from Cypress/Playwright/Selenium?
Can I import tests from Cypress/Playwright/Selenium?
- Cypress
- Playwright
- Selenium
What if my existing tests use custom commands or page objects?
What if my existing tests use custom commands or page objects?
- Page Object Model → Reusable Keystone test components
- Custom commands → Equivalent recorded actions
- Test fixtures → Environment-specific configuration
- Complex custom assertions
- Framework-specific APIs
- Unusual wait strategies
Will I lose my existing test investment?
Will I lose my existing test investment?
- Same test scenarios, more reliable execution
- Keep existing CI integration (just change the runner)
- Gradual migration (run both frameworks in parallel)
- Team knowledge transfers directly
Troubleshooting
My tests work locally but fail in Keystone. Why?
My tests work locally but fail in Keystone. Why?
- Different environment URLs (check Environment config)
- Missing authentication (add auth to Environment)
- Feature flags disabled in staging
- Timing differences (AI healing usually fixes this)
How do I debug a failing test?
How do I debug a failing test?
- Video recording: See exactly what the browser did
- Screenshots: Visual state at each step
- HAR files: Network requests and responses
- DOM snapshots: Page HTML at failure point
- Console logs: JavaScript errors and warnings
Advanced Features
Can I integrate with Slack/email for notifications?
Can I integrate with Slack/email for notifications?

