Customers

How HeyGen Cut QA Time by 60% with Shiplight AI

Shiplight AI Team

Updated on April 3, 2026

View as Markdown

HeyGen is an AI video generation platform — #1 on G2's 2025 Top 100 list. Their engineering team ships AI-driven features at a pace that traditional QA couldn't match. This is how they went from spending 60% of their time on test maintenance to spending zero.

The Problem: Playwright maintenance was the bottleneck

HeyGen's web application evolves rapidly. AI models improve, UI components change, new features ship weekly. Their engineering team had invested in a comprehensive Playwright test suite — the right decision for reliability.

But the maintenance cost was unsustainable.

> "I used to spend 60% of my time authoring and maintaining Playwright tests for our entire web application."

Every UI change — a button relocation, a class rename, a layout adjustment — broke tests. Not because the product was broken, but because the selectors were stale. The team was spending more time fixing tests than fixing bugs.

This is the classic E2E testing trap: the more comprehensive your test suite, the more time you spend maintaining it. At 60% of engineering time, test maintenance had become more expensive than the testing itself was worth.

The Solution: Intent-based tests that self-heal

HeyGen adopted Shiplight AI to replace their manual Playwright maintenance workflow. The key change wasn't switching frameworks — Shiplight runs on Playwright under the hood. The change was switching what the tests are anchored to.

From selectors to intent

Traditional Playwright tests are anchored to DOM selectors:

// Breaks when the button class changes
await page.click('.btn-primary-submit');

Shiplight tests are anchored to intent:

goal: Verify checkout completes successfully
statements:
  - intent: Click the Submit button
  - VERIFY: Order confirmation is displayed

When HeyGen's UI changes, the intent ("Click the Submit button") stays the same. Shiplight's intent-cache-heal pattern resolves the element by what it does, not what it's called in the DOM. If a cached locator breaks, AI re-resolves it and updates the cache automatically.

From manual maintenance to zero maintenance

The result was dramatic:

> "I spent 0% of the time doing that in the past month. I'm able to spend more time on other impactful/more technical work."

MetricBefore ShiplightAfter Shiplight
Time on test maintenance60% of engineering time~0%
Tests broken per UI changeMultipleNear-zero (self-healing)
Test formatPlaywright TypeScriptYAML (readable by entire team)
CI integrationCustom scriptsCLI runs anywhere Node.js runs

What Changed Day-to-Day

Engineers write features, not test fixes

Before Shiplight, a UI refactor meant hours of updating selectors across the test suite. Now, the self-healing mechanism handles it. Engineers focus on building features.

Tests are reviewable by the whole team

Playwright test code required TypeScript knowledge to review. Shiplight's YAML tests are readable by PMs, designers, and QA — anyone can understand what's being tested by reading the intent statements.

Coverage grows automatically

With Shiplight Plugin, HeyGen's AI coding agents verify UI changes during development and generate tests as a byproduct. Coverage grows as features ship, not as a separate project.

Key Takeaways

  • 60% → 0%: HeyGen eliminated test maintenance as an engineering cost center
  • Same framework, different approach: Shiplight runs on Playwright — no migration required, just a different testing model
  • Intent over selectors: Anchoring tests to user intent instead of DOM selectors is what makes self-healing possible
  • Tests become a byproduct of shipping: With Shiplight Plugin, verification during development generates regression coverage automatically

Is Your Team in the Same Position?

If your engineering team spends more time maintaining tests than writing features, the economics are broken. Shiplight's approach — intent-based YAML tests that self-heal on Playwright, with Shiplight Cloud for managed execution — is designed to fix exactly that.

References: HeyGen, Playwright, Google Testing Blog