One of your most requested features is now live: Fully parallel E2E testing for native Windows desktop applications.
Simply select Windows as the test target while writing a new flow (or tell the QA Wolf agent) and our infrastructure handles the rest: provisioning a clean Windows machine, delivering the app, and recording the run.
One test-authoring API
Windows flows follow the same test-writing conventions as QA Wolf’s web, iOS, and Android flows, so you can use a familiar structure across platforms to launch the app, find a control, interact with it, and assert the result.
import { startApp, expect } from "@qawolf/flows/windows";
// Illustrative: replace the path and accessibility IDs for your app.
// The executable must already be delivered to the Windows VM.
const app = await startApp("C:\\qawolf\\apps\\Example.exe");
// Find native controls by their accessibility IDs.
const nameField = await app.$("~NameField");
const saveButton = await app.$("~SaveButton");
const status = await app.$("~StatusMessage");
// Interact with the app, then assert the result.
await nameField.setValue("Example project");
await saveButton.click();
await expect(status).toHaveText("Project saved");
Support for custom disk images
Windows runners support .exe, .msi and .msix installers, and they come pre-loaded with standard software like Adobe Acrobat and Google Chrome. If your app has specialized dependencies, you can add a custom image in a private pool restricted to your workspace.
Clean, parallel runs watchable in real time
Each test gets its own Windows VM that’s destroyed after a single run, so there’s no cross-contamination from files, settings, or saved logins. Because VMs are pre-booted and ready for a test, runs start in seconds — and just like all QA Wolf tests, you can watch the run live through the platform your coding agent, or review the recording later.
Run cross-platform flows
Windows tests also work with Run Rules so if you have workflows that span a desktop, web, and mobile app (e.g., scan a document with your phone and view as PDF on desktop) you can tell QA Wolf when to start each test and what data to pass between them.