Dev & Engineering ✓ Microsoft · Official integration-testingvscodemochaelectronextension-host-testingtest-filtering

VS Code Integration Test Runner

Run and filter VS Code repository integration tests with the correct platform scripts.

FollowSkills review · FSRS-2.0
Not recommended
52/ 100 5-point scale 2.6 / 5
Trust14 / 25 · 2.8/5

The skill only documents running local integration-test scripts and filtering arguments; it requests no credentials, external service, or extra privilege, and repository context provides an MIT license and a security-reporting channel. However, it does not disclose that tests may launch Electron or extension hosts, access workspace data, or create external effects, and it lacks confirmation, isolation, rollback, and sensitive-data guidance, so points are deducted.

Reliability9 / 20 · 2.3/5

The SKILL.md gives a largely consistent distinction between Node.js integration tests and extension-host tests, explains argument combinations, compilation prerequisites, and the unit-test boundary. It does not include script implementations, a compatibility matrix, abnormal-input behavior, or diagnostic failure handling. Static evidence cannot exceed 10, so the score is reduced further.

Adaptability10 / 15 · 3.3/5

The audience and core scenario are clear: running integration tests in the VS Code repository, with macOS/Linux/Windows command forms and several filtering modes. Non-fit cases, complete input constraints, OS-specific boundaries, Chinese-language support, and dependency-download reachability from mainland-China networks are not documented, so points are deducted.

Convention8 / 15 · 2.7/5

The document has clear structure and includes metadata, test categories, scripts, options, examples, compilation requirements, and the unit-test distinction. Repository context identifies Microsoft ownership, version, MIT licensing, and the project repository. The skill lacks its own version, changelog, maintenance/update path, dependency-install instructions, FAQ, known limitations, and troubleshooting, so points are deducted.

Effectiveness7 / 15 · 2.3/5

The skill supplies directly usable commands and combinations for the core task. Static review did not execute the scripts, and the supplied material does not prove that every argument statement matches the pinned implementation or explain result collection and recovery after failures. Under static calibration the score cannot exceed 7, with additional deduction for these gaps.

Verifiability4 / 10 · 2.0/5

Commands, paths, and behavior claims are auditable against repository scripts and tests, and the repository contains CI and test materials. However, the supplied workflows primarily cover chat-lib/chat-perf rather than this skill's key paths, and no direct execution results or cross-platform evidence are provided, so verifiability remains limited.

Evidence confidence:Low Reviewed Jul 20, 2026 Reviewed revision 5b3e1be7be9e
Before you use it
  • Confirm dependencies are installed and compiled JavaScript output exists before running; the skill provides no standard installation or version-matching procedure.
  • Integration tests may launch Electron and extension hosts; confirm workspace-data access, network use, and side-effect scope first because isolation and cleanup are not documented.
  • Treat the stated combinations of --run, --runGlob, --suite, and --grep as unexecuted claims; verify against the actual scripts when behavior or platform differences matter.
  • The skill does not document mainland-China reachability or mirror configuration for dependency downloads.
See the full review method →

What it does & when to use it

This skill covers the integration-test workflow in the VS Code repository on macOS/Linux and Windows. It distinguishes Node.js integration tests that run in Electron from extension host tests contained in built-in extensions. It documents filters for files, paths, test names, and suites, including how different option combinations change the test scope. Tests require compiled JavaScript output, so the VS Code - Build watch task must be running or compilation must already be complete.

Provides and explains the commands ./scripts/test-integration.sh for macOS/Linux and .\scripts\test-integration.bat for Windows. It guides use of --run for a source file, --runGlob for matching compiled .js test-file paths, --grep for matching test titles, --suite for selecting extension host suites, and --help for usage information. It explains that no filters run all Node.js integration tests followed by all extension host tests, and documents the behavior of combinations involving --run, --runGlob, --grep, and --suite. It also separates .integrationTest.ts integration tests from .test.ts unit tests and explains that other options can be forwarded to the Node.js runner used by scripts/test.sh.

  1. A VS Code repository developer needs to run every Node.js integration test and extension host test, so they run the integration-test script without filters.
  2. A developer working on search needs to run one integration-test file, so they use `--run` with a source path under `src/`.
  3. A developer investigating one workbench area needs to select test files by compiled path, so they use `--runGlob`.
  4. An extension maintainer needs to run only Git, TypeScript, Emmet, or API suites, so they use `--suite`.
  5. A developer needs to locate tests by title, so they use `--grep`, optionally combined with `--suite` or `--run`.
  6. A contributor needs to keep unit-test and integration-test workflows separate, using this skill instead of applying the wrong runner.

Pros & cons

Pros
  • Clearly separates Node.js integration tests from extension host tests.
  • Supports filtering by source file, compiled file path, test title, and extension suite.
  • Documents scripts for both macOS/Linux and Windows.
  • Explains the concrete scope changes caused by option combinations.
Limitations
  • It describes test execution rather than test implementation, result analysis, or automatic failure repair.
  • The tests depend on compiled JavaScript output and may not run as intended before compilation.
  • Additional runner options are not forwarded to extension host suites when `--suite` is used.
  • The source provides no standalone installation workflow and does not document support beyond macOS/Linux and Windows.

How to install

This skill is part of a collection of 61 skills in the microsoft/vscode repository. Its file is .github/skills/integration-tests/SKILL.md. The source material does not provide a standalone installation command, client registration procedure, or separate package; use it by obtaining the VS Code repository and having a compatible Agent Skills client read that path. Repository URL: https://github.com/microsoft/vscode

How to use

From the VS Code repository root, run the script for your platform. Examples include ./scripts/test-integration.sh --run src/vs/workbench/services/search/test/browser/search.integrationTest.ts, ./scripts/test-integration.sh --runGlob "/search//*.integrationTest.js", ./scripts/test-integration.sh --grep "TextSearchProvider", and ./scripts/test-integration.sh --suite git. On Windows, use .\scripts\test-integration.bat with the corresponding options, removing the illustrative extra space before the path. Before running, ensure the VS Code - Build watch task is running or compilation has completed.

Compared to similar skills

Unlike scripts/test.sh or runTests, this skill is for .integrationTest.ts files and extension tests; scripts/test.sh or runTests are for .test.ts unit tests. scripts/test.sh only finds integration-test files when explicitly given --runGlob **/*.integrationTest.js, while scripts/test-integration.sh is not intended for ordinary .test.ts files.

FAQ

Does this skill require an additional fee?
The source does not mention an additional fee. It is located in Microsoft's open-source VS Code repository, whose source code is available under the MIT license.
Why might the script fail to find tests?
Integration tests run against compiled JavaScript output. Ensure that the VS Code - Build watch task is running or that compilation has completed.
How do I run only extension host tests?
Use `--suite`, for example `./scripts/test-integration.sh --suite git`. This skips Node.js integration tests; you can add `--grep` to filter tests within the selected suite.
What does `--grep` cover?
When used alone, `--grep` is applied to Node.js integration tests and all extension host suites. When combined with `--suite`, it filters only the selected suites.

More skills from this repository

All from microsoft/vscode

Dev & Engineering ✓ Microsoft · Official

Tool Rename Compatibility Check

Protect existing prompts and tool configurations when built-in tools are renamed.

Dev & Engineering ✓ Microsoft · Official

Copilot Chat OpenTelemetry Instrumentation

A repository-specific guide for consistent OpenTelemetry instrumentation in Copilot Chat.

Dev & Engineering ✓ Microsoft · Official

VS Code Configuration Policy Maintainer

Standardize VS Code policy registration, export, and validation.

Design & Frontend ✓ Microsoft · Official

VS Code Design Philosophy

Turn vague UI discomfort into concrete fixes using shared values, principles, and design moves.

Dev & Engineering ✓ Microsoft · Official

Agent Host E2E Test Assistant

Maintain VS Code Agent Host end-to-end tests with strict replay fixtures.

Dev & Engineering ✓ Microsoft · Official

VS Code Integrated Browser Architecture

A practical architecture guide for safely changing VS Code's cross-process integrated browser.

Dev & Engineering ✓ Microsoft · Official

VS Code Agents Window Sessions

Safely implement and repair VS Code Agents window features.

Dev & Engineering ✓ Microsoft · Official

Commit Assistant

Creates repository-style commit messages and safely commits code changes.

Dev & Engineering ✓ Microsoft · Official

Agent Host Log Investigator

Trace session, transport, and host failures in Agent Host debug exports.

Dev & Engineering ✓ Microsoft · Official

VS Code Unit Test Runner

Run VS Code repository unit tests by file, test name, or compiled-output glob.

Dev & Engineering ✓ Microsoft · Official

VS Code Agent Customization Assistant

Create, repair, and troubleshoot VS Code Agent customization files and their loading behavior.

Dev & Engineering ✓ Microsoft · Official

Code OSS Launch & Debug

Launch a built-from-source VS Code with isolated profiles, Playwright control, and multi-process debugging ports.

Dev & Engineering ✓ Microsoft · Official

VS Code Accessibility Development Guide

A practical specification for accessible interactive features in VS Code.

Design & Frontend ✓ Microsoft · Official

VS Code CSS Layout Standards

Build reliable VS Code-style CSS layouts and text truncation behavior

Dev & Engineering ✓ Microsoft · Official

VS Code Chat Performance Lab

Benchmark chat rendering and detect memory growth across VS Code builds.

Dev & Engineering ✓ Microsoft · Official

Component Fixtures for Screenshot Testing

Create stable, theme-aware VS Code component fixtures for isolated screenshot testing.

Dev & Engineering ✓ Microsoft · Official

VS Code Smoke Test Assistant

Run, filter, and debug VS Code end-to-end smoke tests.

Dev & Engineering ✓ Microsoft · Official

VS Code Crash Dump Symbolicator

Turn native VS Code crash dumps into readable backtraces with method names.

Dev & Engineering ✓ Microsoft · Official

Local VS Code Web Workbench

Validate VS Code workbench and Agents window changes in a local vscode.dev instance.

Dev & Engineering ✓ Microsoft · Official

Feedback Action

Reads current-session feedback and applies the requested code changes.

Related skills