Skip to content

Conversation

Copy link
Contributor

Copilot AI commented Jan 15, 2026

Adds E2E testing infrastructure using Playwright with automated CI execution.

Changes

  • Playwright setup: Installed @playwright/test with configuration for Chromium, Firefox, and WebKit
  • Test suite: Basic E2E tests validating homepage load and component presence
  • CI workflow: GitHub Actions job that installs browsers, runs tests, and uploads reports as artifacts
  • Dev commands: Added npm run test, test:ui, and test:headed scripts
  • Configuration: Auto-starts dev server on localhost:4321 with 120s timeout, retries tests 2x on CI

Example test structure:

test("homepage loads successfully", async ({ page }) => {
  await page.goto("/");
  await expect(page).toHaveTitle(/DotForge - Editor/);
});

The CI workflow uses npx playwright install --with-deps to ensure all browser engines are available in the pipeline.

Warning

Firewall rules blocked me from connecting to one or more addresses (expand for details)

I tried to connect to the following addresses, but was blocked by firewall rules:

  • https://storage.googleapis.com/chrome-for-testing-public/143.0.7499.4/linux64/chrome-headless-shell-linux64.zip
    • Triggering command: /usr/local/bin/node /usr/local/bin/node /home/REDACTED/work/dotforge-web/dotforge-web/node_modules/playwright-core/lib/server/registry/oopDownloadBrowserMain.js (http block)
  • https://storage.googleapis.com/chrome-for-testing-public/143.0.7499.4/linux64/chrome-linux64.zip
    • Triggering command: /usr/local/bin/node /usr/local/bin/node /home/REDACTED/work/dotforge-web/dotforge-web/node_modules/playwright-core/lib/server/registry/oopDownloadBrowserMain.js (http block)
  • telemetry.astro.build
    • Triggering command: /usr/local/bin/node node /home/REDACTED/work/dotforge-web/dotforge-web/node_modules/.bin/astro build (dns block)
    • Triggering command: /usr/local/bin/node node /home/REDACTED/work/dotforge-web/dotforge-web/node_modules/.bin/astro dev (dns block)
  • workers.cloudflare.com
    • Triggering command: /usr/local/bin/node node /home/REDACTED/work/dotforge-web/dotforge-web/node_modules/.bin/astro dev (dns block)

If you need me to access, download, or install something from one of these locations, you can either:

Original prompt

This section details on the original issue you should resolve

<issue_title>Setup Playright CI job</issue_title>
<issue_description>- Setup testing harness using Playwright

  • Create CI workflow to run the tests</issue_description>

Comments on the Issue (you are @copilot in this section)


💡 You can make Copilot smarter by setting up custom instructions, customizing its development environment and configuring Model Context Protocol (MCP) servers. Learn more Copilot coding agent tips in the docs.

Co-authored-by: shenanigansd <54628770+shenanigansd@users.noreply.github.com>
@cloudflare-workers-and-pages
Copy link

cloudflare-workers-and-pages bot commented Jan 15, 2026

Deploying with  Cloudflare Workers  Cloudflare Workers

The latest updates on your project. Learn more about integrating Git with Workers.

Status Name Latest Commit Preview URL Updated (UTC)
✅ Deployment successful!
View logs
dotforge 465f52a Commit Preview URL

Branch Preview URL
Jan 15 2026, 05:55 AM

@shenanigansd shenanigansd marked this pull request as ready for review January 15, 2026 05:42
@shenanigansd shenanigansd self-requested a review as a code owner January 15, 2026 05:42
Copilot AI review requested due to automatic review settings January 15, 2026 05:42
Copilot AI changed the title [WIP] Setup Playwright testing harness and CI workflow Setup Playwright testing with CI workflow Jan 15, 2026
Copy link

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This PR sets up Playwright as an end-to-end testing framework for the DotForge web application with an automated CI workflow. The implementation adds testing infrastructure and configuration along with basic smoke tests to verify the application loads correctly.

Changes:

  • Added Playwright as a dev dependency with test scripts in package.json
  • Created Playwright configuration with multi-browser support (Chromium, Firefox, WebKit)
  • Added two basic E2E tests to verify homepage loads and the ArtboardEditor component is present
  • Created GitHub Actions workflow to run Playwright tests on CI
  • Updated .gitignore to exclude Playwright test artifacts

Reviewed changes

Copilot reviewed 4 out of 6 changed files in this pull request and generated 2 comments.

Show a summary per file
File Description
package.json Added Playwright dependency and test scripts (test, test:ui, test:headed)
package-lock.json Lock file updates for Playwright and its dependencies
playwright.config.ts Playwright configuration with dev server setup and multi-browser testing
tests/homepage.spec.ts Basic E2E tests for homepage loading and component visibility
.gitignore Added Playwright artifact directories to ignore list
.github/workflows/playwright.yaml CI workflow for running Playwright tests on push and PRs

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Signed-off-by: Bradley Reynolds <bradley.reynolds@tailstory.dev>
Signed-off-by: Bradley Reynolds <bradley.reynolds@tailstory.dev>
Signed-off-by: Bradley Reynolds <bradley.reynolds@tailstory.dev>
Signed-off-by: Bradley Reynolds <bradley.reynolds@tailstory.dev>
@shenanigansd shenanigansd merged commit 0eaaa04 into main Jan 15, 2026
7 checks passed
@shenanigansd shenanigansd deleted the copilot/setup-playwright-ci-job branch January 15, 2026 05:56
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Setup Playright CI job

2 participants