Files
vscode/test/integration/browser
Dmitriy VasyuraandCopilot 3c81a516ca ci: Reduce test runner startup overhead (#334833)
* ci: parallelize integration and smoke test shards

Run Agent Host E2E beside the remaining Electron integration tests, split Electron smoke coverage into core and chat shards, and isolate the macOS proxy scenarios from the main smoke critical path.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

* ci: reduce test runner startup overhead

Skip redundant prelaunch work on prepared CI runners, avoid Browser-only Copilot compilation, disable login-shell probing on test servers, and reduce Browser unit console output while preserving JUnit results.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

* ci: reuse prepared runners for integration tests

Run Agent Host E2E concurrently inside the existing Electron integration jobs and recombine core and chat smoke coverage, eliminating repeated checkout, dependency restore, transpilation, and Electron setup. Keep only the macOS network proxy smoke job isolated because it changes global network state.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

* Revert "ci: parallelize integration and smoke test shards"

This reverts commit 56126088db.

---------

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
2026-09-08 21:23:33 +00:00
..
2026-07-14 12:34:04 +02:00
…

Integration test

Compile

Make sure to run the following commands to compile and install dependencies:

cd test/integration/browser
npm i
npm run compile

Run (inside Electron)

scripts/test-integration.[sh|bat]

All integration tests run in an Electron instance. You can specify to run the tests against a real build by setting the environment variables INTEGRATION_TEST_ELECTRON_PATH and VSCODE_REMOTE_SERVER_PATH (if you want to include remote tests).

Run (inside browser)

scripts/test-web-integration.[sh|bat] --browser [chromium|webkit] [--debug]

All integration tests run in a browser instance as specified by the command line arguments.

Add the --debug flag to see a browser window with the tests running.

Note: you can enable verbose logging of playwright library by setting a DEBUG environment variable before running the tests (https://playwright.dev/docs/debug#verbose-api-logs)

Debug

All integration tests can be run and debugged from within VSCode (both Electron and Web) simply by selecting the related launch configuration and running them.