Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Goodbye jsdom/happy-dom, hello Vitest Browser M...
Search
Matija Marohnić
October 24, 2025
Technology
0
9
Goodbye jsdom/happy-dom, hello Vitest Browser Mode!
Matija Marohnić
October 24, 2025
Tweet
Share
More Decks by Matija Marohnić
See All by Matija Marohnić
Introduction to Remix
silvenon
0
140
Cypress vs. Playwright
silvenon
0
160
Studying Strapi: an open source head headless CMS
silvenon
0
48
CSS Specificity
silvenon
0
39
Make your JavaScript projects more accessible to newcomers
silvenon
0
76
React Hooks
silvenon
0
83
PostCSS
silvenon
0
45
CSS Custom Properties
silvenon
0
40
Maintainable Integration Testing in React
silvenon
0
47
Other Decks in Technology
See All in Technology
ソフトとハード両方いけるデータ人材の育て方
waiwai2111
1
250
次世代AIコーディング:OpenAI Codex の最新動向 進行スライド/nikkei-tech-talk-40
nikkei_engineer_recruiting
0
150
I tried making a solo advent calendar!
zzzzico
0
150
Digitization部 紹介資料
sansan33
PRO
1
6.5k
戰略轉變:從建構 AI 代理人到發展可擴展的技能生態系統
appleboy
0
190
さくらのクラウドでのシークレット管理を考える/tamachi.sre#2
fujiwara3
1
150
#22 CA × atmaCup 3rd 1st Place Solution
yumizu
1
210
わが10年の叡智をぶつけたカオスなクラウドインフラが、なくなるということ。
sogaoh
PRO
1
560
スクラムマスターが スクラムチームに入って取り組む5つのこと - スクラムガイドには書いてないけど入った当初から取り組んでおきたい大切なこと -
scrummasudar
3
2.1k
田舎で20年スクラム(後編):一個人が企業で長期戦アジャイルに挑む意味
chinmo
1
1.5k
Scrum Guide Expansion Pack が示す現代プロダクト開発への補完的視点
sonjin
0
630
Introduction to Sansan Meishi Maker Development Engineer
sansan33
PRO
0
330
Featured
See All Featured
A Soul's Torment
seathinner
4
2.1k
The Hidden Cost of Media on the Web [PixelPalooza 2025]
tammyeverts
2
140
Tips & Tricks on How to Get Your First Job In Tech
honzajavorek
0
410
What’s in a name? Adding method to the madness
productmarketing
PRO
24
3.9k
ラッコキーワード サービス紹介資料
rakko
0
2M
Fireside Chat
paigeccino
41
3.8k
Designing for Timeless Needs
cassininazir
0
110
Building the Perfect Custom Keyboard
takai
2
670
How People are Using Generative and Agentic AI to Supercharge Their Products, Projects, Services and Value Streams Today
helenjbeal
1
98
実際に使うSQLの書き方 徹底解説 / pgcon21j-tutorial
soudai
PRO
196
71k
The Spectacular Lies of Maps
axbom
PRO
1
430
技術選定の審美眼(2025年版) / Understanding the Spiral of Technologies 2025 edition
twada
PRO
115
100k
Transcript
Matija Marohnić Goodbye jsdom & happy-dom 👋 Hello Vitest Browser
Mode!
Who am I? • 13+ ye a rs of frontend
development • a lot of open source experience • p a ssion for testing • I just returned from ViteConf
Stable! Experimental v4
jsdom & happy-dom
jsdom & happy-dom • window.m a tchMedi a () ✅
• sh a dow DOM ✅ • Custom Elements ✅ • node.scrollHeight === 0 • IntersectionObserver → stub • ResizeObserver → stub
jsdom & happy-dom • extremely c a p a ble
DOM emul a tors • v a riety of purposes • testing components is best in a browser
Vitest Browser Mode
Vitest Browser Mode What is it? • unit tests inside
a browser • no more pretending, your tests now know everything • currently supports Pl a ywright a nd WebdriverIO
Vitest Browser Mode How do I…? • should be somewh
a t f a mili a r to E2E • loc a tors, retry- a bility, a 11y-friendly queries a nd a ctions… • liter a lly uses E2E fr a meworks under the hood
Vitest Browser Mode Extensibility • new loc a tors •
new comm a nds • new p a ge methods…
Vitest Browser Mode vs. E2E testing
Vitest Browser Mode • good for testing fr a mework
components — render wh a t you need • client side • no routing (work a round: memory router) • f a ster visu a l regression testing • Vitest UI
E2E testing • testing full st a ck a pplic
a tion f lows • route-b a sed • E2E fr a mework UI, for ex a mple Pl a ywright UI
silvenon.com Matija Marohnić • @silvenon.com on Bluesky 🦋 • “silvenon”
on GitHub