[go: up one dir, main page]

Skip to content

A browser extension that generates Cypress, Playwright and Puppeteer test scripts from your interactions πŸ–± ⌨

License

Notifications You must be signed in to change notification settings

KonghaYao/Recorder

Β 
Β 

Repository files navigation

Cypress Recorder

Chrome Web Store Tests

A Browser Extension that generates Cypress, Playwright and Puppeteer scripts automatically from your browser interactions.

Simply step through your website while recording with DeploySentinel Recorder and the extension will convert the captured user flow into a Cypress, Playwright or Puppeteer script.

Chrome Store Icon Firefox Addon Icon

Looking for a Cypress Studio alternative? Check out our Cypress Recorder Plugin.

Demo

Demo

Features

  • πŸ’» Automatically capture clicks, keyboard inputs, window resizes, and scroll events.
  • πŸ€– Generate clean and commented scripts for Cypress, Playwright and Puppeteer.
  • πŸ˜€ Recording human actions and use shortcuts to generate assertion script.
  • πŸ“‹ Preview recording progress and copy generated scripts mid-test to clipboard.
  • πŸ“› Generate element selectors using id and class as well as other HTML properties (ex. aria-label, alt, name, data-testid)
  • πŸ–± Capture hover events via context menu option (right-click)
  • βœ… Assert/wait for specific text to be visible on the page
  • πŸ“Έ Generate full page screenshot events

Getting Started

pnpm i cypress-recorcer
// cypress.config.js
const { defineConfig } = require('cypress');
module.exports = defineConfig({
  e2e: {
    baseUrl: process.env.BASE,
    setupNodeEvents(on, config) {
      // Add plugin import here πŸ‘‡
      require('cypress-recorder')(on, config);
    },
  },
});

Alternatives Comparison

We think there are other great open source codegen tools out there, here is how we think we compare with them. We're always looking to improve our features, so feel free to open an issue or PR for what you think is missing.

DeploySentinel Recorder Headless Recorder Chrome Puppeteer Recorder Playwright CLI Codegen
Automatic Click Capture βœ… βœ… βœ… βœ…
Automatic Input Capture βœ… ⚠ βœ… βœ…
Automatic File Upload Capture ❌ ❌ βœ… βœ…
Accessibility Selector Support βœ… ❌ βœ… βœ…
Copy Code to Clipboard βœ… βœ… ❌ βœ…
data-testid Selector Support βœ… βœ… ❌ βœ…
Text selector support ⚠ ❌ ❌ βœ…
Screenshot event generation βœ… βœ… ❌ ❌
Hover event generation βœ… ❌ ❌ ❌
Record from Chrome Stable βœ… βœ… βœ… ❌

Development Instructions

Install Dependencies: pnpm i

Firefox

Start Local Webpack Dev Server for Firefox: pnpm start-ff

Compressed Firefox Extension: pnpm build-ff

Bundle source files for review: pnpm bundle-source

Chrome

Start Local Webpack Dev Server for Chrome: pnpm start-chrome

Compressed Chrome Extension: pnpm build-chrome

Run E2E Tests: pnpm test


fix webpack failure

export NODE_OPTIONS=--openssl-legacy-provider

Plugin Revival: DeploySentinel's Creation Kept Alive by KonghaYao

This plugin was originally created by DeploySentinel, but had not been maintained for some time. KonghaYao took it upon himself to revive the plugin and implement many convenient features.

About

A browser extension that generates Cypress, Playwright and Puppeteer test scripts from your interactions πŸ–± ⌨

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • TypeScript 57.6%
  • JavaScript 39.7%
  • CSS 2.5%
  • Other 0.2%