[PR #888] [MERGED] [Test] Use playwright electron module for e2e testing #1182

Closed
opened 2026-10-31 22:20:11 +00:00 by bsakaguchi · 0 comments
Owner

📋 Pull Request Information

Original PR: https://github.com/Comfy-Org/desktop/pull/888
Author: @webfiltered
Created: 2/11/2025
Status: ✅ Merged
Merged: 2/12/2025
Merged by: @webfiltered

Base: main ← Head: end-to-end


📝 Commits (10+)

  • f34a2ae Use playwright electron module for e2e testing
  • a5cd44b nit - Rename
  • be7f239 Backup local user config on global setup
  • 97a812c Set more realistic timeouts
  • 893cbdc Refactor TestApp to base class
  • 70f9f82 Split app window tests to separate file
  • d61a475 Add self-cleaning test app class to run installation tests
  • 36b1973 Add basic testing README
  • fbe148b Update terminology - now using e2e testing
  • 6e23b24 Include playwright reports in GH action artifacts

📊 Changes

11 files changed (+310 additions, -63 deletions)

View changed files

📝 .github/workflows/integration_test_windows.yml (+9 -0)
📝 playwright.config.ts (+15 -0)
📝 playwright.setup.ts (+14 -13)
➕ tests/README.md (+34 -0)
📝 tests/integration/appLifecycle.spec.ts (+34 -50)
➕ tests/integration/appWindow.spec.ts (+15 -0)
➕ tests/integration/autoCleaningTestApp.ts (+41 -0)
➕ tests/integration/tempDirectory.ts (+14 -0)
➕ tests/integration/testApp.ts (+61 -0)
➕ tests/integration/testEnvironment.ts (+35 -0)
➕ tests/shared/utils.ts (+38 -0)

📄 Description

Changes

  • Removes vite dev server workarounds from e2e testing
  • Launches the app as an executable, via playwright's Electron API

Testing

  • Testing is currently sequential; most/all parallel testing will require sharding
  • New test framework is easily extended
  • Test objects are disposable and currently perform async clean up per-test

┆Issue is synchronized with this Notion page by Unito


🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.

## 📋 Pull Request Information **Original PR:** https://github.com/Comfy-Org/desktop/pull/888 **Author:** [@webfiltered](https://github.com/webfiltered) **Created:** 2/11/2025 **Status:** ✅ Merged **Merged:** 2/12/2025 **Merged by:** [@webfiltered](https://github.com/webfiltered) **Base:** `main` ← **Head:** `end-to-end` --- ### 📝 Commits (10+) - [`f34a2ae`](https://github.com/Comfy-Org/desktop/commit/f34a2aee6860379e88ce33be39ad02670226f741) Use playwright electron module for e2e testing - [`a5cd44b`](https://github.com/Comfy-Org/desktop/commit/a5cd44b1eb3f6a5f0ae16ea843a296f212b87c83) nit - Rename - [`be7f239`](https://github.com/Comfy-Org/desktop/commit/be7f2394e842cd0ed044de7a7430b0ebab3c65c5) Backup local user config on global setup - [`97a812c`](https://github.com/Comfy-Org/desktop/commit/97a812c0c904918b30fc8ea9418533dd061e3f7e) Set more realistic timeouts - [`893cbdc`](https://github.com/Comfy-Org/desktop/commit/893cbdc66ac7e0d464bdec3b1c663b2c00fbf45a) Refactor TestApp to base class - [`70f9f82`](https://github.com/Comfy-Org/desktop/commit/70f9f820e784977f3d5e6cf135b26426b51d1816) Split app window tests to separate file - [`d61a475`](https://github.com/Comfy-Org/desktop/commit/d61a475647c5135e1d3d87014c477c56ffdb364b) Add self-cleaning test app class to run installation tests - [`36b1973`](https://github.com/Comfy-Org/desktop/commit/36b19730befe0ebf50903111ec71b7e5ba377acc) Add basic testing README - [`fbe148b`](https://github.com/Comfy-Org/desktop/commit/fbe148b16e2876410029fb455d66ded31ce5fe51) Update terminology - now using e2e testing - [`6e23b24`](https://github.com/Comfy-Org/desktop/commit/6e23b2422d989b2462b970821d87261116ea864a) Include playwright reports in GH action artifacts ### 📊 Changes **11 files changed** (+310 additions, -63 deletions) <details> <summary>View changed files</summary> 📝 `.github/workflows/integration_test_windows.yml` (+9 -0) 📝 `playwright.config.ts` (+15 -0) 📝 `playwright.setup.ts` (+14 -13) ➕ `tests/README.md` (+34 -0) 📝 `tests/integration/appLifecycle.spec.ts` (+34 -50) ➕ `tests/integration/appWindow.spec.ts` (+15 -0) ➕ `tests/integration/autoCleaningTestApp.ts` (+41 -0) ➕ `tests/integration/tempDirectory.ts` (+14 -0) ➕ `tests/integration/testApp.ts` (+61 -0) ➕ `tests/integration/testEnvironment.ts` (+35 -0) ➕ `tests/shared/utils.ts` (+38 -0) </details> ### 📄 Description ### Changes - Removes vite dev server workarounds from e2e testing - Launches the app as an executable, via playwright's Electron API ### Testing - Testing is currently sequential; most/all parallel testing will require sharding - New test framework is easily extended - Test objects are disposable and currently perform async clean up per-test ┆Issue is synchronized with this [Notion page](https://www.notion.so/PR-888-Test-Use-playwright-electron-module-for-e2e-testing-1976d73d3650818891a4dd9d85ae7546) by [Unito](https://www.unito.io) --- <sub>🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.</sub>
bsakaguchi 2026-10-31 22:20:11 +00:00
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
Comfy-Org/desktop#1182
No description provided.