feat: Add cloud E2E testing infrastructure

Adds Playwright tests for cloud environment with Firebase auth.

Changes:
- Refactor ComfyPage to abstract base class
- Add LocalhostComfyPage (existing devtools implementation)
- Add CloudComfyPage (cloud settings API, Firebase auth)
- Add cloud fixture with auth state persistence
- Add globalSetupCloud for Firebase login
- Add playwright.cloud.config with 5x timeout
- Add basic cloud tests (load app, canvas interaction, settings)
- Update .gitignore for auth state files
- Update tsconfig to include playwright.cloud.config

Architecture:
- ComfyPage abstract with 3 backend-specific methods
- LocalhostComfyPage uses /api/devtools + multi-user
- CloudComfyPage uses /api/settings + Firebase localStorage
- No code duplication (95% shared)

Setup:
- Requires CLOUD_TEST_EMAIL and CLOUD_TEST_PASSWORD env vars
- globalSetup logs in once, saves auth to browser_tests/.auth/
- Tests reuse saved auth state (no login per test)
This commit is contained in:
bymyself
2025-11-06 16:23:00 -07:00
parent 8849d54e20
commit ae1617874f
9 changed files with 340 additions and 61 deletions

View File

@@ -55,6 +55,7 @@
"eslint.config.ts",
"global.d.ts",
"knip.config.ts",
"playwright.cloud.config.ts",
"src/**/*.vue",
"src/**/*",
"src/types/**/*.d.ts",