Skip to content

A QATonic product

QAMigrate

Selenium to Playwright migration CLI

What is QAMigrate?

QAMigrate is QATonic's local command-line tool for moving Java Selenium test suites to Playwright Java. The current CLI is distributed through npm and requires Node.js 20 or newer, a Java JDK, and Maven.

It uses deterministic rewrites, reports migration risks, and leaves review markers for code that needs human attention. Assess the original suite, preview the planned changes, then verify compilation and test discovery after migration. Native, hybrid, and compatibility modes support different migration approaches.

How to get started

  1. 1

    Install and assess

    Install the npm CLI, work from a clean version-controlled project, initialize its workspace, and analyze your Java Maven suite before making migration changes.

  2. 2

    Establish a baseline and preview

    Run baseline and plan, then use migrate with --dry-run. Inspect the proposed patches, unsupported patterns, and review markers before applying changes.

  3. 3

    Verify and review

    Apply the reviewed migration, run verify and report, and inspect the resulting tests. Rollback restores the backed-up files, subject to checks that protect subsequent edits.

npm installation and migration preview
npm install -g qamigrate
qamigrate init --project ./my-selenium-tests
qamigrate analyze --project ./my-selenium-tests
qamigrate baseline --project ./my-selenium-tests
qamigrate plan --project ./my-selenium-tests
qamigrate migrate --project ./my-selenium-tests --mode hybrid --dry-run
Commands follow the published npm README. Run qamigrate <command> --help for options supported by your installed version.
Read the step-by-step guide

Before you use it

The current target is Java Maven projects using TestNG or JUnit 4/5. Cucumber support is partial. Gradle migration, full Cucumber migration, other source languages, and cloud-provider Selenium configuration are not fully supported. The package is proprietary; refer to its included license.

Questions about QAMigrate

Do I install QAMigrate with pip or npm?

Use npm install -g qamigrate for the current Node.js CLI. Older Python package references describe the previous implementation.

Does QAMigrate send my source code to an AI model?

The current CLI uses local rule-based rewrites. Its published documentation says code and project files stay on your machine. Optional usage telemetry is off unless you opt in.

Is migration fully automatic?

No. Review the dry-run patches and TODO(qamigrate) markers, verify the build, and run representative tests before accepting a migration.