Skip to content

Migrate E2E tests to WooCommerce QIT infrastructure #41

@jeffpaul

Description

@jeffpaul

Description

We currently rely on a GitHub token for running automated end-to-end (E2E) tests and this token is expected to expire within a year, which poses a risk to our existing CI/CD workflows and testing reliability.

To proactively address this, we propose migrating our existing E2E tests to WooCommerce’s official Quality Insights & Testing (QIT) infrastructure, ensuring stable and reliable automated testing moving forward.

Why Migrate to WooCommerce’s QIT?

  • Reliability & Stability: Avoid disruptions caused by expiring tokens or third-party service interruptions.
  • Integration with WooCommerce Standards: Consistent and robust testing aligned with WooCommerce core and other extensions.
  • Future-proofing: Ensures tests remain effective as WooCommerce’s testing infrastructure continues to evolve.

Proposed Steps for Migration

  1. Assessment & Planning

    • Evaluate current E2E test suite to identify necessary adjustments for WooCommerce QIT integration.
    • Determine required configuration and environment variables for tests (e.g., PHP, WooCommerce, WordPress core versions).
  2. Adapt Tests to WooCommerce QIT Infrastructure

    • Refactor existing tests (e.g., Playwright, Cypress, PHPUnit) to run within WooCommerce’s QIT framework.
    • Validate functionality and environment compatibility within QIT.
  3. Automate Test Runs via WooCommerce QIT

    • Integrate automated runs for GoCardless tests into WooCommerce’s existing QIT scheduling or GitHub Actions workflows.
    • Ensure the test suite runs consistently on PRs, merges, and release triggers.
  4. Documentation and Training

    • Document the new testing process clearly, outlining execution steps and any environment-specific considerations.

Technical Considerations

  • Ensure all E2E tests accurately reflect production environments (WordPress, WooCommerce, PHP versions).
  • Validate that sensitive credentials (GoCardless API keys, etc.) are securely managed within QIT.
  • Document the migration clearly for future maintainers.

Next Steps

  • Confirm timeline for token expiration.
  • Coordinate with WooCommerce’s QIT team to schedule migration and set up the required testing environments.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    Projects

    Status

    Backlog

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions