Skip to content
| Marketplace
Sign in
Visual Studio Code>Testing>Squish Test ExplorerNew to Visual Studio Code? Get it now.
Squish Test Explorer

Squish Test Explorer

ftiemann

|
2 installs
| (0) | Free
VS Code Testing UI integration for Squish (Qt GUI test automation)
Installation
Launch VS Code Quick Open (Ctrl+P), paste the following command, and press enter.
Copied to clipboard
More Info

Squish Test Explorer

VS Code extension integrating Squish (Qt GUI test automation, v9.x) with the native Testing UI. Replaces the Squish IDE / Eclipse runner for day-to-day test execution inside VS Code.

Features

  • Auto-discovery — scans the workspace for suite_*/suite.conf files and builds a Suite → Test case tree in the Testing view. Updates live as files are added or removed.
  • Run all / suite / case — click the play button at any level; runs the minimal squishrunner invocation for exactly what you selected.
  • Streaming output — live stdout/stderr from squishrunner appears in the Test Results panel while the run is in progress.
  • Pass / Fail / Skip / Error — results are read from JUnit XML (--reportgen junit,…); failures carry a clickable link to the exact file and line in test.py.
  • Cancel — the stop button sends SIGTERM to the running process (SIGKILL after 3 s).
  • Context menus — right-click a suite to open its suite.conf or reveal the suite folder in the Explorer.
  • Status bar — shows suite and test-case counts; turns amber when the runner is not configured.

Requirements

  • Squish 9.x Linux x86_64 installed (WSL2 or native Linux).
  • AUT registered before running: squishserver --config addAUT <name> <path>
  • Python test suites only (LANGUAGE=Python in suite.conf).

Setup

  1. Install the extension.
  2. Open a workspace that contains suite_*/suite.conf files — the Testing tree appears automatically.
  3. Set Squish › Install Dir (squish.installDir) to the root of your Squish installation (the directory that contains bin/squishrunner). Supports ${workspaceFolder}.

Settings

Setting Default Description
squish.installDir "" Directory containing bin/squishrunner. Supports ${workspaceFolder}.
squish.runnerPath "" Full path override for squishrunner binary.
squish.testRoots [] Directories to scan. Defaults to workspace folders.
squish.testSuiteSearch ["**/suite_*/suite.conf"] Globs used to find suites.
squish.testSuiteExclude ["**/node_modules/**","**/build/**"] Globs to exclude.
squish.useLocalServer true Pass --local to squishrunner (auto-spawns squishserver).
squish.serverHost "127.0.0.1" squishserver host (when useLocalServer is false).
squish.serverPort 4322 squishserver port.
squish.abortOnFail false Stop the suite run on the first failure.
squish.snoozeFactor 1.0 Multiply all Squish timeouts by this factor.
squish.extraRunnerArgs [] Extra arguments appended to every squishrunner call.
squish.env {} Extra environment variables (e.g. {"QT_QPA_PLATFORM":"wayland"}).
squish.resultDir "${workspaceFolder}/.squish-results" Directory for JUnit XML and attachments.

WSL2 notes

  • Use a Linux x86_64 Squish build inside WSL2 — not the Windows installer.
  • WSLg (Win11) provides a display automatically; no DISPLAY setup needed.
  • If the xcb platform plugin fails, add "QT_QPA_PLATFORM": "wayland" to squish.env.

Development

First-time setup

make configure   # npm install

Build & watch

make build       # one-shot bundle → dist/extension.js
make watch       # rebuild on every save

Type-check & lint

make compile     # tsc --noEmit
make lint        # ESLint

Interactive debugging (F5)

  1. make watch in a terminal.
  2. F5 in VS Code — opens an Extension Development Host with the extension loaded.

Offline / mock testing

The repo ships a fake squishrunner at fake-squish/bin/squishrunner. Set squish.installDir to ${workspaceFolder}/fake-squish and open the repo itself as a workspace — the test_squish/ directory contains four mock suites with 17 test cases that exercise pass, fail, and skip outcomes without a real Squish installation.

Package and install

make package     # produces squish-test-explorer-<version>.vsix
make install     # package + install into the running VS Code
  • Contact us
  • Jobs
  • Privacy
  • Manage cookies
  • Terms of use
  • Trademarks
© 2026 Microsoft