DEV Community

Cover image for From Screen Recording to Test Cases in Seconds — Meet ClipCase
Amuthan CP
Amuthan CP

Posted on

From Screen Recording to Test Cases in Seconds — Meet ClipCase

The problem nobody talks about

Every QA engineer knows this moment.

You've just finished testing a feature. You've explored the flow, caught the bugs, validated the edge cases. You know this feature inside out.

Now you have to open a spreadsheet and document everything you just did.

Test cases are supposed to be written before testing — to define expected behavior before exploration begins. But in reality, most teams write them after. Or not at all.

The gap between when test cases should be written and when they actually get written is one of the most quietly painful problems in QA.

So I asked myself a simple question:

What if the recording is the documentation?

That question became ClipCase.


What is ClipCase?

ClipCase is an open-source CLI tool that converts screen recordings into structured QA test cases — automatically.

You drop in a .mov or .mp4. You run one command. You get back production-ready test cases in Markdown, CSV, and Excel.

pip install clipcase
clipcase your_recording.mov
Enter fullscreen mode Exit fullscreen mode

That's it.


How it works

Under the hood, ClipCase runs a three-step pipeline:

Step 1 — Frame Extraction

ClipCase uses ffmpeg to extract frames from the video at a configurable FPS rate. You control how many frames get sampled — more frames means higher accuracy, more API cost. Fewer frames means faster, cheaper runs.

# Extract at 1 frame per second
clipcase recording.mov --fps 1

# Preview frames before spending API credits
clipcase recording.mov --frames-only
Enter fullscreen mode Exit fullscreen mode

Step 2 — AI Vision Analysis

Extracted frames are batched and sent to your chosen AI provider — Claude (Anthropic), GPT-4o (OpenAI), or Gemini 1.5 Pro (Google). The AI analyzes the visual flow: navigation patterns, entered data, UI interactions, validation behavior.

# Switch providers per run
clipcase recording.mov --provider openai
clipcase recording.mov --provider gemini   # Free tier available
clipcase recording.mov --provider claude   # Default
Enter fullscreen mode Exit fullscreen mode

Step 3 — Structured Output

ClipCase generates three outputs from a single run:

  • Markdown — readable, version-controllable
  • CSV — importable into any test management tool
  • Excel — color-coded headers, auto-filters, frozen rows, auto-sized columns

Test cases auto-classify into: Smoke, Sanity, Regression, and E2E.


What genuinely surprised me

I expected the AI to pick up navigation flows. What I didn't expect was how much detail it caught:

  • Specific test data that was entered into fields
  • Validation error messages shown on screen
  • Conditional UI states and dynamic field rendering
  • Multi-step form flows with branching logic

No written spec required. The recording was the spec.


Honest limitations

ClipCase is v1.0.0. Here's what it doesn't do perfectly yet:

  • Long sessions blur scenario boundaries — the AI struggles to separate distinct test cases in a 20-minute recording
  • Fast navigation reduces capture accuracy — if you're clicking quickly, frames miss interactions
  • Business logic still needs manual refinement — AI documents what happened, not always what should happen
  • Complex validations need human review — AI accelerates documentation, it doesn't replace QA judgment

The goal isn't replacing testers. It's closing the documentation gap so QA engineers can focus on risk analysis and quality strategy instead of retrospective paperwork.


Cost per run

Provider Approx. Cost
Claude (Anthropic) ~$0.30 – $1.00
GPT-4o (OpenAI) ~$0.50 – $1.50
Gemini 1.5 Pro Free tier available

How we released it to PyPI — tonight

Here's the fun part. I shipped ClipCase to PyPI on a Sunday evening. Start to finish, it took about 90 minutes.

Here's the exact process if you want to do the same for your own CLI tool.

1. Add pyproject.toml

[build-system]
requires = ["setuptools>=61.0"]
build-backend = "setuptools.build_meta"

[project]
name = "clipcase"
version = "1.0.0"
description = "Convert screen recording videos into structured QA test cases using AI vision"
readme = "README.md"
license = { text = "MIT" }
requires-python = ">=3.9"
authors = [
  { name = "Amuthan", email = "amuthan.cp12@gmail.com" }
]
keywords = ["qa", "testing", "test-cases", "ai", "cli", "automation"]
classifiers = [
  "Programming Language :: Python :: 3",
  "License :: OSI Approved :: MIT License",
  "Topic :: Software Development :: Testing",
]
dependencies = [
  "anthropic",
  "openai",
  "google-generativeai",
  "openpyxl",
  "python-dotenv",
]

[project.scripts]
clipcase = "clipcase:main"
Enter fullscreen mode Exit fullscreen mode

The [project.scripts] section is the key part — it's what makes clipcase your_video.mov work globally after install. Your entry point file needs a main() function.

2. Make sure your entry point is ready

def main():
    # your argparse + logic here
    pass

if __name__ == "__main__":
    main()
Enter fullscreen mode Exit fullscreen mode

3. Install build tools and build

pip install build twine
python3 -m build
Enter fullscreen mode Exit fullscreen mode

This creates two files in dist/:

clipcase-1.0.0.tar.gz
clipcase-1.0.0-py3-none-any.whl
Enter fullscreen mode Exit fullscreen mode

4. Create a PyPI account and API token

Go to pypi.org → Register → Account Settings → API Tokens → Create one.

5. Upload

python3 -m twine upload dist/*
Enter fullscreen mode Exit fullscreen mode

When prompted:

  • Username: __token__
  • Password: your API token

6. Done.

pip install clipcase
Enter fullscreen mode Exit fullscreen mode

Your tool is now globally installable. From anywhere in the world.


Try it

pip install clipcase
clipcase your_recording.mov
Enter fullscreen mode Exit fullscreen mode

What's next

  • Web UI wrapper so non-CLI users can try it
  • Batch processing for multiple recordings
  • Direct export to Jira, Linear, and TestRail
  • Pro tier with custom QA principles templates

If you're a QA engineer, SDET, or developer who tests their own work — try it on a real recording and let me know what the AI catches. I'd love to know if it surprises you the way it surprised me.

Built with Python, ffmpeg, and roughly $0.30–$1.00 of API credits per run.
Open source. MIT licensed. Contributions welcome.

Top comments (0)