oppia/oppia

[Feature Request]: Migrate acceptance tests for curriculum-admin from Puppeteer to Playwright

Aperta

#26.820 aperta il 18 lug 2026

 (1 commento) (0 reazioni) (0 assegnatari)Python (3534 fork)batch import
Impact: MediumWork: Mediumenhancementgood first issue

Metriche repository

Star
 (5292 stelle)
Metriche merge PR
 (Merge medio 20g 19h) (71 PR mergiate in 30 g)

Descrizione

Is your feature request related to a problem? Please describe.

The curriculum-admin acceptance test specs still run on Puppeteer. As part of the broader migration (https://github.com/oppia/oppia/issues/24715), these need to move to Playwright so we can retire Puppeteer entirely from the acceptance test suite.

Describe the solution (or solutions) you'd like

Migrate the following specs from core/tests/puppeteer-acceptance-tests/specs/curriculum-admin to core/tests/playwright-acceptance-tests/specs/curriculum-admin, following our existing Playwright conventions:

  • create-edit-and-delete-a-classroom.spec.ts
  • create-publish-unpublish-and-delete-the-topic-and-skill.spec.ts
  • create-skill-with-workedexamples.spec.ts
  • create-subtopic-study-guide-with-multiple-sections.spec.ts
  • try-to-paste-invalid-components-and-get-error.spec.ts

At a high level, this involves:

  1. Removing the old spec from puppeteer-acceptance-tests/specs/curriculum-admin and adding a rewritten version to playwright-acceptance-tests/specs/curriculum-admin, in Playwright syntax/conventions.
  2. Updating the framework field for each suite in acceptance.json to "playwright".
  3. Adding any missing utility methods to playwright-acceptance-tests/utilities.
  4. Verifying tests pass locally, both desktop and mobile:
    • Desktop: python -m scripts.run_acceptance_tests --suite={suite_name}
    • Mobile: python -m scripts.run_acceptance_tests --suite={suite_name} --mobile
    • Videos for both runs will be generated in the oppia_full_stack_test_video_recordings folder (sibling directory to the Oppia root)
    • Traces for both runs will also be generated in the oppia_full_stack_test_playwright_results folder (sibling directory to the Oppia root)
  5. Running the stress test on your fork, on the branch you want to merge, using the stress_test_acceptance_test.yml workflow, for 200 total runs (100 desktop + 100 mobile), to rule out flakiness before requesting assignment.
  6. Share the stress test link and either the trace or video in the issue thread.

After reviewing the stress test run and video/trace recordings we can assign you to the particular spec file.

Describe alternatives you've considered and rejected

No response

Additional context

No response

Guida contributor