Skip to content

startVitest + browser mode crashing with Vitest received --browser flag, but no project had a browser configuration. #9801

@AriPerkkio

Description

@AriPerkkio

Describe the bug

Running browser mode via Node API without projects crashes. Adding projects fixes it.

import { startVitest } from "vitest/node";
import { playwright } from "@vitest/browser-playwright";

const vitest = await startVitest("test", [], {
  browser: {
    enabled: true,
    headless: true,
    provider: playwright(),
    instances: [{ browser: "chromium" }],
  },
});

await vitest.close();
$ node index.mjs 
file:///x/repros/vitest-browser-name/node_modules/.pnpm/vitest@4.0.18_@vitest+browser-playwright@4.0.18/node_modules/vitest/dist/chunks/cli-api.B7PN_QUv.js:12238
                        if (!this.projects.filter((p) => p.config.browser.enabled).length) throw new Error(`Vitest received --browser flag, but no project had a browser configuration.`);
                                                                                                 ^

Error: Vitest received --browser flag, but no project had a browser configuration.
    at Vitest._setServer (file:///x/repros/vitest-browser-name/node_modules/.pnpm/vitest@4.0.18_@vitest+browser-playwright@4.0.18/node_modules/vitest/dist/chunks/cli-api.B7PN_QUv.js:12238:77)
    at BasicMinimalPluginContext.handler (file:///x/repros/vitest-browser-name/node_modules/.pnpm/vitest@4.0.18_@vitest+browser-playwright@4.0.18/node_modules/vitest/dist/chunks/cli-api.B7PN_QUv.js:13158:6)
    at _createServer (file:///x/repros/vitest-browser-name/node_modules/.pnpm/vite@7.3.1/node_modules/vite/dist/node/chunks/config.js:25603:86)
    at createViteServer (file:///x/repros/vitest-browser-name/node_modules/.pnpm/vitest@4.0.18_@vitest+browser-playwright@4.0.18/node_modules/vitest/dist/chunks/cli-api.B7PN_QUv.js:9870:17)
    at createVitest (file:///x/repros/vitest-browser-name/node_modules/.pnpm/vitest@4.0.18_@vitest+browser-playwright@4.0.18/node_modules/vitest/dist/chunks/cli-api.B7PN_QUv.js:13186:17)
    at prepareVitest (file:///x/repros/vitest-browser-name/node_modules/.pnpm/vitest@4.0.18_@vitest+browser-playwright@4.0.18/node_modules/vitest/dist/chunks/cli-api.B7PN_QUv.js:13548:14)
    at startVitest (file:///x/repros/vitest-browser-name/node_modules/.pnpm/vitest@4.0.18_@vitest+browser-playwright@4.0.18/node_modules/vitest/dist/chunks/cli-api.B7PN_QUv.js:13494:14)
    at file:///x/repros/vitest-browser-name/index.mjs:4:16

Node.js v22.22.0

Reproduction

https://stackblitz.com/~/edit/vitest-dev-vitest-pohf9wmu?file=index.mjs&initialPath=/__vitest__/

System Info

Stackblitz

Used Package Manager

pnpm

Validations

Metadata

Metadata

Assignees

No one assigned

    Labels

    feat: browserIssues and PRs related to the browser runnerp3-minor-bugAn edge case that only affects very specific usage (priority)

    Type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions