Viziera
Features

The features

that ship for you.

App testing, beta testing, visual regression, accessibility, load testing — every test surface a modern product team needs, packaged as one desktop app.

The lineup

Eight test surfaces.One desktop app.

0
Test surfaces
0+
Integrations
0%
Pass rate in pilots
0K
Load-test scale

Run loop

Plan. Drive. Observe. Learn. The four phases of every Viziera run.

From the PR webhook to the status check, every run follows the same deterministic loop — and produces the same artifacts.

01

Plan

Viziera scans your repo for changed files, maps them to scenarios, and prioritizes the ones likely to surface a regression first.

PR-delta filteringScenario prioritizationCritical-path detection
02

Drive

The desktop driver opens a real browser, handles auth (including 2FA), and executes scenarios with self-healing selectors and retries.

Headed browser + native2FA hand-offSelf-healing selectors
03

Observe

Screens, network, console, and AI signals are captured. Visual regression diffs against baseline; the AI tester flags anomalies.

Video + screenshotsNetwork + console captureAI anomaly review
04

Learn

After every run, Viziera updates its baselines, flakiness scores, and per-finding history. The signal-to-noise ratio improves every cycle.

Baseline updatesFlakiness scoringFinding history
Self-healing

Selectors that heal. Not selectors that flake.

When a CSS selector breaks, Viziera falls back to text, aria-label, semantic role, and visual position. Most refactors that used to nuke a suite now just keep running.

Text + aria + role + visual fallbacks
Per-step retry policies with backoff
Flakiness tracking across runs
Confidence score on every assertion
Self-healing fallback
step 2 of 4
Try CSS selector#email-input
Fall back to textlabel "Email"
Resolve via ariaaria-label match
Confirm + assertvalue typed OK
AI Beta Tester

An AI user that finds the bugs you missed.

Logs into your app, crawls every reachable page, and prioritizes exploration by likely bug density. Each finding comes back with a screenshot, repro script, and severity.

Autonomous crawl with priority queue
Per-finding repro script
Visual + functional + a11y signals
Mobile + desktop viewport sweeps
Triage queue67% triaged
Open findings128
Triaged this week24
Promoted to ticket6
CI Integration

Wired to your repo. Not bolted on after the fact.

A bearer-token webhook ties Viziera to GitHub, GitLab, or Bitbucket. PRs get a status check, a comment with screenshots, and a delta of new findings vs. the base branch.

Token-auth webhook endpoint
PR-delta filtering
Status checks + PR comments
Slack, Discord, Teams, email routing
4 integrations active
🐙
GitHubconnected
💬
Slackconnected
🛡️
Sentryconnected
📐
Linearsyncing
Workflows

Workflows around tests. Not just tests on a schedule.

If/else, foreach, parallel branches, wait-for-event, and per-step error handlers. The control flow you want in production code — applied to your test runs.

If / else, foreach, parallel branches
Wait-for-event approval gates
Per-step error handlers + retries
Variable interpolation + reusable templates
Workflow chain
App Test
Beta12 scenarios
Beta
Visual3 findings
Visual
Slack—

How we're different

Not a framework. Not a cloud silo.

How Viziera compares to roll-your-own Playwright suites and the SaaS test platforms in your spam folder.

DIY

Playwright / Cypress

  • Selectors break on every refactor
  • No autonomous exploration
  • Headless — misses native dialogs
  • CI integration is your problem
Cloud

Cloud test platforms

  • Your credentials live in their cloud
  • Screenshots stored off-machine
  • Per-minute pricing on every run
  • Limited native / desktop support
OS

Viziera

  • Self-healing selectors out of the box
  • Autonomous AI tester included
  • Real desktop control — not just browser
  • Local-first runs, keytar-backed secrets
  • Token-auth webhook CI in under an hour
Author in code

Scenarios as code. Reviewed like any other PR.

Author scenarios in TypeScript and the runner auto-discovers them — or record one with the Chrome extension and let Viziera generate the file for you. Either way, they sit in your repo and review like any other code.

TypeScript files auto-discovered by the runner
Chrome extension recorder for non-engineers
Self-healing fallbacks under the hood
Open scenario format — no lock-in
login.scenario.ts
// Drop into ./viziera/scenarios — the runner discovers it

export default scenario({
  name: 'Login — happy path',
  url: 'https://app.example.com',
  viewports: ['desktop', 'mobile'],
  run: async (page) => {
    await page.type('#email', 'qa@viziera.dev')
    await page.click('Sign in')
    await page.expect('Welcome back')
  }
})

Ready to test like a user?

Start with one scenario. Scale to a full release pipeline.