SHAFT:把 Java 测试自动化的脏活全包了 文章目录SHAFT把 Java 测试自动化的脏活全包了1、 这玩意儿是干嘛的2、 为什么要用它3、 它能干哪些活4、 SHAFT 怎么用5、 适合哪些人用SHAFT把 Java 测试自动化的脏活全包了SHAFT_ENGINE 在 GitHub 上拿到 394 Star。它是一个 Maven 发布的 Java 自动化测试框架把 Web、Mobile、API、CLI、Database 这些测试场景里重复的基建活儿拢到一处驱动管理、同步、断言、配置、测试数据、报告、证据全在一个框架里搞定。1、 这玩意儿是干嘛的就一件事让 Java 团队不用再自己搭测试基建。写自动化测试真正折磨人的不是写用例是周边那一堆事。装驱动、等元素、截图、出报告、管配置、跑 CI、对接云平台、留证据每种活儿都得配一套代码。项目大了这套东西散在各处维护起来很痛。SHAFT 把这层全部封装好对外暴露一致的 API。Web 测试、Mobile 测试、API 调用、CLI 执行、Database 校验都走同一套写法。本地能跑Grid 能跑云平台能跑CI 也能跑。2、 为什么要用它做过 Java 测试的人都经历过的痛Selenium WebDriver 自己只管驱动等待得自己写断言得自己挑库截图得自己封报告得引 Allure配置得自己读 yamlExcel 数据源得自己解析移动端又得另起一套 Appium 代码。换一个项目这些活儿再重做一遍。换一个公司又重做一遍。SHAFT 把这些公共能力做成了标配。一次配置多端复用。Web 用例和 Mobile 用例写起来几乎一样API 测试也共用同一套断言和报告。Allure 报告开箱即用执行日志、截图、附件、可访问性产物都自动生成。3、 它能干哪些活领域内置能力UI 自动化浏览器和移动端驱动管理、同步动作、截图、日志服务测试REST 和 GraphQL API 工作流请求、响应、断言全覆盖系统覆盖CLI 和 Database 动作覆盖浏览器之外的端到端校验测试设计断言、校验、测试数据处理、配置覆写报告Allure 就绪附件、执行日志、可访问性产物扩展云执行、录制、诊断、自愈、MCP、AI、视频、视觉校验Web、Mobile、API 这几块是基础盘。CLI 和 Database 让端到端链路也能纳入自动化校验不用再单独搭一套。扩展模块有几个值得点出来。BrowserStack 模块直接对接云执行Capture 录视频Doctor 做诊断Heal 做自愈。MCP 模块接 Agentic 工作流AI 模块接大模型视觉测试模块做 UI 像素级比对。需要哪个引哪个不强绑。4、 SHAFT 怎么用它本身是 Maven 工件坐标在 Maven Central 上。pom.xml 里引依赖dependencygroupIdio.github.shafthq/groupIdartifactIdshaft-engine/artifactIdversion最新版本/version/dependency测试框架这边支持 TestNG、JUnit、Cucumber 三家不挑。配好就能写用例Web 端走封装好的浏览器驱动API 端走 REST/GraphQL 客户端断言用内置的 Assertions、Validations。执行层面本地跑、Selenium Grid 跑、BrowserStack 跑、CI 里跑全靠配置文件切换代码不动。报告自动落到 Allure附件自动挂跑完开会看就行。5、 适合哪些人用Java 团队受够了每个项目都从零搭测试基建的人在搞全链路自动化、想让 Web、Mobile、API 共用一套断言和报告的测试负责人接 AI 工作流的团队想让 Agent 直接参与测试诊断、自愈、生成用例的人官方文档在 shafthq.github.io/docs安装、升级、各端测试、Agentic 工作流都写得比较细。MIT 协议源码、贡献指南都在仓里。.github.io/docs安装、升级、各端测试、Agentic 工作流都写得比较细。MIT 协议源码、贡献指南都在仓里。