Java test automation framework for web, mobile, API, CLI, database, and desktop E2E testing with a fluent API and built-in reporting.
SHAFT
以下摘录自该仓库的 README(片段) · 在 GitHub 读完整 README →
**Reliable Java test automation, from first intent to production-grade evidence.**
SHAFT is a Java test-automation framework for teams who want one maintainable
engine across web, mobile, API, CLI, database, and desktop. Configuration
drives the run. The verdict comes back with logs, screenshots, and a report.
**Generate your first project** ·
**Read the user guide** ·
**Watch the 100-second overview** ·
**Star SHAFT on GitHub**
Start here
SHAFT is for Java teams who are about to rebuild drivers, waits, assertions,
configuration, test data, and Allure plumbing again. Generate a project from
the user guide, then run mvn test. The
100-second overview
and the feature video release
are the short tour; the badge above is the current version, and
releases hold history.
**Humans:** orient here, then CONTRIBUTING.md. Report vulnerabilities through SECURITY.md.
**Agents:** jump to For agents. This README is orientation, not agent policy.
Add it to a project you already have
Use coordinate io.github.shafthq:shaft-engine. Set the version from the Maven Central badge. The generated project is still the supported first run. Kotlin uses the same coordinate.
Each reactor module and shaft-intellij has a short README with a purpose line and a use-or-skip note.
Why teams use it
SHAFT removes the repeated plumbing around drivers, waits, assertions, configuration, test data, screenshots, logs, and Allure evidence. The modular reactor keeps the core lean.
- **Strong defaults, explicit control.** Configuration keeps environments and CI reproducible.
- **Modular by design.** Start with shaft-engine, then add visual, video, cloud, native, or agentic modules.
- **Evidence is part of execution.** Logs, screenshots, attachments, and reports share one lifecycle.
- **Open and inspectable.** MIT licensed, guarded by the pull-request gate, security policy, and release history.
One orchestration layer, every execution surface
Test intent and configuration enter SHAFT's orchestration layer, fan out across the required execution surfaces, and return through one unified evidence flow.
| Engineering need | What SHAFT provides |
|---|---|
| Stable UI automation | Managed Selenium and Appium drivers, synchronized actions, locator builders, screenshots, and accessibility evidence. |
| End-to-end coverage | REST, GraphQL, Database, CLI, and native desktop actions in the same test flow. |
| Trustworthy verdicts | Hard and soft assertions, structured logs, attachments, failure context, and Allure reports. |
| Scalable execution | Configuration-first local, Grid, BrowserStack, LambdaTest, TestNG, JUnit, and Cucumber runs. |
| Maintainable architecture | A focused engine, BOM-aligned optional modules, public extension points, and reusable test assets. |
| Assisted workflows | Capture, Doctor, deterministic Heal, MCP/CLI tools, provider adapters, and an IntelliJ IDEA plugin. |
Where to go next
| You want to | Open |
|---|---|
| Learn the product | User guide |