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.0rc6.tar.gz (195.9 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.0rc6-py3-none-any.whl (208.6 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: vibe_tester-0.1.0rc6.tar.gz
  • Upload date:
  • Size: 195.9 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.0rc6.tar.gz
Algorithm Hash digest
SHA256 981a25dd2e18d5068b265d27853d278c678940b472513a3487d4629458a345e2
MD5 5038c520b23667824ed5eb2c67a04373
BLAKE2b-256 36dc837a209e46ee9f77de211ebc35b2ce1deb023fdc60d7fd183380a9d7b5c5

See more details on using hashes here.

File details

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

File metadata

  • Download URL: vibe_tester-0.1.0rc6-py3-none-any.whl
  • Upload date:
  • Size: 208.6 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.0rc6-py3-none-any.whl
Algorithm Hash digest
SHA256 285c6874a92bc392cfbe20d8c3a79cbab87bbbb75e99a4d9bd6fdc33b23adbb3
MD5 8efff01c420a0767e8b27918accc9723
BLAKE2b-256 3ddafb72e76465f4f9ee8172ca5e70c6ee6d880c8c574a424996daa51a67d867

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