52

Vitest Browser Mode Guide

Has anyone debugged Vitest Browser tests? Seems broken.

27 minutes agoknallfrosch

> Fast execution... despite running in a real browser, which at first might seem like it would be slow - it is actually really fast.

What makes it fast?

6 hours agoc_s_guy

I'd also like a definition for "fast". Because my unit tests run in 100ms. Is it that fast? Or "fast" for a browser test

4 hours ago8n4vidtmkvmk

More options in the ecosystem seems better, but I was surprised to see this in the linked vitest docs:

> However, to run tests in CI you need to install either playwright or webdriverio. We also recommend switching to either one of them for testing locally instead of using the default preview provider since it relies on simulating events instead of using Chrome DevTools Protocol.

8 hours agogwynforthewyn

I used to do this with Karma test runner. The best part was how it didn't try to capture everything, so debugging with breakpoints was really easy.

I like Vitest browser mode, but it's a pain to just "detach" for a specific frame and run that test in isolation, with my actual breakpoints.

7 hours agosyspec

Using this, can I test canvas?

I have a React component that renders to a canvas (see "DeckGL"). The component renders data that it gets from the backend. So I'd need to mock API requests, then screenshot contents of the canvas.

6 hours agothrow2312321

yes, i've used vitest browser mode to test canvas operations. it's designed to use 'snapshots' which capture page state, not screenshots, but that can detect visual difference on the canvas.

if you're performing GL operations you'll need to pass options to your browser driver to enable GL (for playwright chromium it's just `--enable-gpu`)

unfortunately, canvas rendering is sensitive enough to platform that you may have trouble matching snapshots between developer machines and/or CI.