puppetry

dsheikoMIT更新放缓

基于 Puppeteer 和 Jest 的无代码 Web 测试工具,让非开发者也能通过可视化界面编写端到端测试和视觉回归测试。

Web testing solution for non-developers on top of Puppeteer and Jest

v3.2.6发布于 2021-08-16 12:12 UTC888star127fork同步于 2026-11-07 07:32 UTC

怎么上手

由 README 提炼,执行前请确认
sudo snap install puppetry
brew cask install puppetry
硬件要求按 README 说明

README 未说明显存或 CPU 要求;测试可在 Chromium/Chrome/Firefox/Edge 中运行,支持 Windows 7+、Ubuntu 14.04+、macOS 10.10+ 的 64 位系统

下载:源码 zip·GitHub Releases(安装包)本站不镜像安装包

项目说明

由 README 自动翻译提炼

基于 Puppeteer 和 Jest 的无代码端到端 Web 测试工具,用图形界面录制并运行浏览器测试

基于 Puppeteer 和 Jest 的无代码 Web 测试工具,让非开发者也能通过可视化界面编写端到端测试和视觉回归测试。

核心能力

  • 用图形界面从预定义列表选择浏览器方法与断言
  • 以 variable = locator 形式声明元素目标,支持 CSS 与 XPath
  • 按 BDD 风格管理项目、套件、测试上下文与用例
  • 内置自动化录制器,可录制用户操作流程
  • 导出为可直接在 CI 中运行的 Jest/Puppeteer 工程

容易踩的坑

项目已被作者正式标记为废弃,建议改用 Playwright;需从 releases 页面下载对应平台安装包,或通过 Snapcraft/Homebrew 安装;导出测试依赖 Jest 与 Puppeteer 环境才能运行

内容由模型根据 README 生成,可能不完整或不准确,以官方文档为准。看原文 README

最近发版

5 个版本v3.2.6
  1. v3.2.6Puppetry 3.2.6最新正式版2021-08-16 · 2021-08-16 12:12 UTC

    Updates

    • improvement: update to Puppeteer 10.2.0

    Bug fixes

    • fix: issues #99
    • fix: issues #98
    • fix: issues #95
    • fix: issues #93
  2. v3.2.5 Puppetry 3.2.52021-05-11 · 2021-05-11 16:31 UTC
    查看更新说明

    Features

    • improvement: decent support of Firefox / headless Firefox
    • improvement: Edge support

    puppetry-browsers

    Updates

    • improvement: update to Puppeteer 9.1.1
    • improvement: update to Electron 12.0.6

    Bug fixes

    • fix: issues #75
    • fix: upload file
    • fix: file permissions for generated directories
  3. v3.2.4Puppetry 3.2.42020-08-10 · 2020-08-10 15:05 UTC
    查看更新说明

    Bug fixes

    • fix: issues #75
  4. v3.2.3Puppetry 3.2.32020-06-08 · 2020-06-08 11:11 UTC
    查看更新说明

    Updates

    • improvement: update to Puppeteer 3.3.0

    Bug fixes

    • fix: parsing template expressions in TARGET.assertAttribute, page.assertConsoleMessage, page.assertDialog, TARGET.assertProperty, TARGET.assertHtml, TARGET.assertStyle, page.assertContent, page.assertTitle, page.assertUrl, page.assertVar
    • fix: TodoMVC example adapted for Firefox
    • fix: Firefox default parameter --kiosk to fix out of range elements issue

    NOTE: If you have assertions with template expressions, please open each and re-save it

  5. v3.2.2Puppetry 3.2.22020-05-26 · 2020-05-26 08:07 UTC
    查看更新说明

    Features

    • improvement: added "replace existing value" to target.type
    • improvement: added page.authenticate (issue #70)
    • improvement: added target.assertText (to compare text ignoring HTML/styling)

    Bug fixes

    • fix: issues #71

    Updates

    • improvement: update to Puppeteer 3.1.0

    Bug fixes

    • improve error output in test report

用户点评

登录用户的真实使用记录,可按版本和硬件筛选
共 0 条

    还没有人点评。第一个说出真实体验的人最有价值。

    README 原文

    未翻译

    ⚠️ Project Deprecated

    After observing the market for many years since the last update, I’ve decided to officially deprecate Puppetry.

    Over time, it became clear that Playwright has evolved to cover almost everything I originally aimed to achieve with this project — and they do it much better. The idea of codeless end-to-end testing, while exciting at the time, has proven to be a technological dead end.

    Today, with the rise of AI-assisted development, it’s possible to create robust end-to-end tests simply by narrating what you want to achieve — something that goes far beyond the original Puppetry vision.

    I’m keeping this repository available as an example and a part of the project’s history. Thank you to everyone who supported and used Puppetry over the years.

    — Dmitry Sheiko

    Build Status Gitter chat Total downloads Latest download

    Puppetry is a powerful, no-code/low-code test automation tool for end-to-end (E2E) testing of web applications. Built on top of Puppeteer, it provides a user-friendly UI for creating, managing, and running automated browser tests—without writing complex scripts. Designed for developers, QA engineers, and testers, Puppetry simplifies web automation while offering flexibility for advanced users.

    Puppetry - codeless end-to-end test automation, integrated with CI/CD pipeline

    Welcome Puppetry

    Puppetry offers you an easy-to-use UI where you choose browser methods and assertions from a predefined list, with predefined settings, guided by extensive tips. Namely you can do the following:

    • record user flow
    • declare element targets as pairs variable = locator, where locator can be either CSS selector or Xpath.
    • manage your test structure in BDD style (project, suite, test context, test case)
    • manage page/element methods and assertions
    • run the tests in Chromium/Chromium/Chrome/Firefox/Edge
    • export the project as Jest/Puppeteer bundle ready to run in CLI (e.g. by a continuous integration server)

    Key Features

    Download

    You can download latest installers for your platform from the releases page

    Current only the following OS are supported:

    • Windows 7 and greater (64 bit)
    • Ubuntu 14.04 and greater (64 bit)
    • MacOS X 10.10 (Yosemite) and greater (64 bit)

    On Linux can be installed with Snapcraft:

    sudo snap install puppetry
    

    On Mac can be installed with Homebrew:

    brew cask install puppetry
    

    FAQ

    Feedback

    Contributing

    • get acquainted with guides
    • examine the Backlog, suggest new features
    • look into existing Issues, come up with a fix (master branch)
    • implement new features (dev branch)
    • check Developer Guide

    Please adhere the coding style. We have one based on jQuery's JavaScript Style Guide. You can find the validation rules in .eslintrc and lint the code by running npm run lint

    Thanks

    A special thanks to Monika Rao, vteixeira19, Gernot Messow, Carlos Mantilla, kkmuffme, Ravindra Jadhav for the ideas and support

    Credits

    License

    MIT