Skip to main content

AI-driven UI automation testing framework with pluggable platform adapters.

Project description

vibe-tester

AI-driven UI automation testing for desktop and web apps — Cucumber-style tests, pluggable platform adapters, ships with the AI assets your coding agent needs to author and run them.

Status: alpha. Public API may change. The windows-desktop and web adapters are implemented; the macos adapter is a stub.


What it does

  1. Lets you describe a UI test in natural language (in Copilot Chat, Claude CLI, Cursor, …) and generates a runnable Gherkin .feature file using real element locators from your project's element store.
  2. Executes scenarios at any granularity (one feature, all of them, or a tag expression) and produces a Markdown report plus optional JSON output for the AI to parse.
  3. Walks your app interactively with you to record UI element paths into a YAML store the executor can resolve.

The framework ships AI assets (agents, skills, an AGENTS.md template) and a deterministic CLI (vibe-tester). It does not embed an LLM and does not run an MCP server — your AI tool of choice provides the intelligence, the CLI is the integration surface.


Docs

This README stays focused on getting started. Everything else — architecture, how-tos, contributor rules, and the shipped-assets catalog — is indexed from doc/README.md.

If you are editing shipped AI files, keep them role-pure: agents are logic/process, skills are knowledge/reference, and assets are copied as data.


Install

# default — every adapter that ships today
pip install vibe-tester

# pick one (smaller install)
pip install vibe-tester[windows-desktop]

# pick several
pip install vibe-tester[windows-desktop,web]
Extra Drives Status
windows-desktop WinUI3 / Win32 / WPF / WebView2 / tray / shell menu Implemented
web Browser SUTs (Playwright) Implemented
macos macOS-native SUTs Stub

Quickstart

# 1. Create a fresh test project (or scaffold into an existing folder)
mkdir my-app-tests
cd my-app-tests
vibe-tester init

# 2. Capture your SUT (interactive — your app should be running)
vibe-tester collect

# 3. Ask your AI agent (Copilot Chat / Claude CLI / …) to write a test:
#    "Write a smoke test that opens Settings and verifies the title."

# 4. Run it
vibe-tester run

CLI reference

Command What it does
vibe-tester init [--target] [--adapter] [--overwrite] [--json] Scaffold a project from shipped assets
vibe-tester list adapters [--json] Show installed adapters
vibe-tester list features [--json] List .feature files
vibe-tester list elements [--details] [--json] Print the project's element vocabulary
vibe-tester collect [--name] [--kind] Interactive element capture
vibe-tester run [--feature|--tag] [--scenario] [--json] Execute behave + emit Markdown / JSON report

All commands accept --json for machine-readable output (intended for the AI agent to parse). Default output is human-friendly Rich tables and Markdown reports under ./results/.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

vibe_tester-0.1.0rc5.tar.gz (183.6 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

vibe_tester-0.1.0rc5-py3-none-any.whl (201.0 kB view details)

Uploaded Python 3

File details

Details for the file vibe_tester-0.1.0rc5.tar.gz.

File metadata

  • Download URL: vibe_tester-0.1.0rc5.tar.gz
  • Upload date:
  • Size: 183.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.11.15

File hashes

Hashes for vibe_tester-0.1.0rc5.tar.gz
Algorithm Hash digest
SHA256 3db45ec34a549edccef4ff01afe439f99dbdd2f942e5dadac56d922327b3ff79
MD5 733b54a8ab1220840ef3075951d41bff
BLAKE2b-256 537602076a32e476262494547ffc6a2ef884c67871347f5ce4f11152d376ebb8

See more details on using hashes here.

File details

Details for the file vibe_tester-0.1.0rc5-py3-none-any.whl.

File metadata

  • Download URL: vibe_tester-0.1.0rc5-py3-none-any.whl
  • Upload date:
  • Size: 201.0 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.11.15

File hashes

Hashes for vibe_tester-0.1.0rc5-py3-none-any.whl
Algorithm Hash digest
SHA256 41156293e372a43215b4b6b120037cb7c4b1099b5f204306882bce42d90512a5
MD5 e1b703af149d01070254f689f0e786ea
BLAKE2b-256 2fdd1a7dfa1c705c87367d02b178518660718fee95d232868ec69126fd031127

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page