Open
Conversation
Adds a complete end-to-end test setup using Playwright's Electron API to
validate the Pixel Agents extension inside a real VS Code instance.
- e2e/playwright.config.ts — config with video, trace, 1-worker isolation
- e2e/global-setup.ts — downloads VS Code via @vscode/test-electron
- e2e/helpers/launch.ts — launches VS Code with isolated HOME + mock PATH
- e2e/helpers/webview.ts — waits for the webview frame, clicks + Agent
- e2e/fixtures/mock-claude — deterministic claude shim: creates JSONL file,
logs invocation; no real Claude CLI required
- e2e/tests/agent-spawn.spec.ts — first spec: click + Agent → assert mock called,
JSONL session file created, terminal tab visible
- e2e/tsconfig.json — strict TypeScript config for test code
NPM scripts added: e2e (xvfb-run headless), e2e:headed, e2e:debug
CONTRIBUTING.md updated with running instructions, artifact paths, mock docs
test-results/ and playwright-report/ added to .gitignore
Test passes locally in 25 s; video recording confirmed at
test-results/e2e/videos/<test-name>/*.webm
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
|
The latest updates on your projects. Learn more about Vercel for GitHub.
|
5eb0262 to
41f1bae
Compare
9f2b30b to
d0d0fc4
Compare
d0d0fc4 to
226e993
Compare
226e993 to
52096c0
Compare
This reverts commit 52096c0.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
claude, creates a JSONL session file, and shows a Claude Code ci: code quality #1 terminal tabWhat's included
e2e/playwright.config.tson, trace on retry, 1 workere2e/global-setup.ts@vscode/test-electron, caches to.vscode-test/e2e/helpers/launch.ts--extensionDevelopmentPath, isolatedHOME+userDataDir, mockclaudeinPATH, records videoe2e/helpers/webview.ts+ Agente2e/fixtures/mock-claude--session-id, writes invocation log, creates.jsonlfilee2e/tests/agent-spawn.spec.tse2e/tsconfig.jsonHow to run
Test result
Video recorded at
test-results/e2e/videos/<test-name>/*.webmFlakiness notes & mitigations
waitForSelector('.monaco-workbench')getPixelAgentsFramepolls all frames every 500 ms for up to 30 s/Claude Code #\d+/is resilient to aria-label changesexpect.pollretries for 20 s at 500 ms / 1 s intervalsxvfb-run --auto-servernumin thee2escript🤖 Generated with Claude Code