E2E Test Automation Anti-Pattern: Headless Browser Testing

It's not worth a tiny speed gain, and it also has issues.

Zhimin Zhan
8 min readApr 18, 2024

--

This is an article in the E2E Test Automation Anti-Pattern series.

Some JS testers, especially Cypress and Playwright ones, will be surprised by the title, as headless is their default mode.

What is Headless Browser Testing?

“Headless testing is a way of running browser UI tests without the “head”, which in this case means that there’s no browser UI, or GUI of any sort. This is useful since when running tests, especially in a CI environment, nobody is “watching” the visuals, so there’s no need to have the extra overhead of the browser GUI.”
LogRocket

I do understand headless browser testing. TestWise, the next-gen functional testing IDE I created, has a “Headless mode” checkbox.

Turn on the headless setting in TestWise, and rerun the same test

Table of Contents:
·
Embarrassing Headless Testing History For Many Software Engineers
1. The Failure of PhantomJS
2. Headless is a separate implementation of the browser, before Chrome v112
·
Why Go for Headless? Mainly, speed. Let’s talk about Speed.
·
Speed Gain in

--

--

Zhimin Zhan

Test automation & CT coach, author, speaker and award-winning software developer. Help teams succeed with Agile/DevOps by implementing real Continuous Testing.