Is protractor still maintained?
No — protractor stopped being maintained around April 2021. The ecosystem moved to @playwright/test, a separate project that took over the same job.
- Status
- No longer maintained
- Last maintained
- April 2021
- Use instead
@playwright/test— on npm- Succession
- Replacement project
- Drop-in
- no — expect code changes
- Confidence
- high
What should I use instead of protractor?
The ecosystem moved to @playwright/test, a separate project that took over the same job. @playwright/test is not a drop-in replacement, so expect to change call sites.
How to migrate from protractor to @playwright/test
ng add builders exist for Playwright, Cypress, WebdriverIO and Nightwatch; the Protractor control flow is gone, so page-object code has to be rewritten as plain async/await.
Why protractor is on this list
In April 2021 the Angular team opened "Future of Angular E2E & Plans for Protractor", explaining that Protractor's control-flow-era architecture predates async/await and that development would stop rather than continue. The npm package now carries a deprecation notice stating it reached end of life by summer 2023, the repository is archived, and the last release was 7.0.0 in May 2020. Angular CLI stopped scaffolding Protractor for new projects and offers builders for third-party runners instead.
The succession is settled: primary sources agree and the ecosystem has already moved.
protractor alternatives
Beyond the primary recommendation, these are credible for protractor's use case:
cypress— view on npmwebdriverio— view on npmnightwatch— view on npmpuppeteer— view on npm
Check your own project for protractor
npx dead-deps --all --min-state unmaintained
Run that in the directory holding your lockfile. If protractor is anywhere in your tree — a direct dependency or buried under something else — it appears in the report with this verdict, this successor and the same evidence links, alongside anything else that has stopped moving. Nothing is uploaded; the scan reads your lockfile locally and queries public registry metadata.
Exit code 1 means something was flagged, which makes npx dead-deps --min-state deprecated usable as a CI gate. See how verdicts are produced.
Evidence
Every claim on this page traces to a primary source. Check them:
- angular/protractor issue 5502: Future of Angular E2E & Plans for Protractor (April 2021)github.com
- npm deprecation notice on protractor (end of life by summer 2023)npmjs.com
- angular/protractor repository (archived)github.com
Packages related to protractor
- casperjsReplacement project: playwright · unmaintained since March 2018
- nightmareReplacement project: playwright · unmaintained since April 2019
- phantomjs-prebuiltReplacement project: puppeteer · unmaintained since March 2018
- enzymeReplacement project: @testing-library/react · unmaintained since December 2019
- geminiSuccessor named by the maintainers: testplane · unmaintained since November 2019
See the full index of covered packages, or read the methodology for how a verdict is reached and why a quiet package is not a dead one.