frontpage.
newsnewestaskshowjobs

Made with ♥ by @iamnishanth

Open Source @Github

fp.

Open in hackernews

Ask HN: What's the worst part of web E2E testing?

4•enekesabel•6mo ago
Hi everyone!

I'm a front-end engineer with ~10 years of experience, but also a quality freak. I always end up becoming the testing evangelist at every company I join, taking up the task of cleaning up the test architecture and fighting for quality. Thanks to this "hobby," I've had my fair share of writing e2e tests using various frameworks (Codeception, Cypress, Playwright), but I've never felt satisfied.

To me, it feels like we are trapped between two extremes: platforms that demand building an enterprise-grade test pyramid, and a bunch of no-code/low-code AI tools that promise magic but just dumb down the process and produce unmaintainable garbage.

This has led me to start a side project to see if I can find a better way to tackle these common pain points. To help me get a clearer picture for my project, I want to know if I'm the only one seeing this. I'd appreciate it if you could share your thoughts on the following:

- Why are we stuck in a loop of brittle tests? One small UI change, and locators start breaking everywhere. Should we just accept this fragility as the price for E2E testing, or are we doing something fundamentally wrong?

- Why do AI testing tools treat us like we're dumb? The choice seems to be between a shallow assistant that only covers the happy path or a black box that says, "just trust me." As a professional, I want to think, solve hard problems, and do the job an AI can't. Where are the tools that augment expertise instead of replacing it with a superficial outcome?

- How can we keep test code clean and scalable? There are awesome patterns like the Page Object Model or theScreenplay Pattern, but they require a huge upfront time investment and software design skills. Most of the teams I worked with didn't even know them or didn't want to walk the extra mile. They usually just copy-paste test code until it becomes unmaintainable, and then stop testing for good.

Apart from this "questionnaire" I would also love to hear any stories, anecdotes, and just your overall feeling about the state of e2e testing and your relation with it.

Thanks in advance for your time and insights!

Comments

austin-cheney•6mo ago
Common pain points for me with test automation:

* slow performance of the baseline application

* flaky tests. This be tests that focus on the wrong dynamic data in a static way or timing issues that introduce race conditions again the tests

* poor negative tests and false positives

* unreliable communication between the test harness and the test subject or communication with interference from the test subjects other communication channels

testl33t•6mo ago
This depends a lot on how an organizations engineering teams are structured. But, here's some tips:

1. Put your E2E tests in the same solution as the project under test if you can. If the product changes in a way that your tests start "failing", then make sure the developer tasked with changing the product also changes the test. Existing tests should pass should be part of some kind of definition of done. This also makes incorporating E2E test to a CI/CD pipeline much easier then keeping them a separate repo.

2. Understand the waiting game. Have at least have one person on the team who deeply understands UI race conditions and how to handle them. "Auto waiting" features like in Playwright and other frameworks are great, until they don't work the way you want them to :). I much prefer the flexibility of the explicit wait pattern in WebDriver. And, if you're any good at what you do, rolling your own "autowait" that's tailored to your specific loading strategies is not rocket surgery.

3. Choose the right tools. Webdriver.io is miles ahead of Playwright and Cypress in terms of testing frameworks. It has the flexibility of Selenium Webdriver behind it, the performance of the new WebDriver bidi apis, while also having all the utility of other frameworks. Such as API testing, recording videos, etc... those bells and whistles marketed by Playwright were solved long before Playwright hit the community.

On that same note, make sure you choose the right language. If your front-end is written in Typescript, then use Typescript. There's plenty of "back-end" functionality in node.js. I have no idea why I still see teams who write massive test suites on Java or C#, but barely scratch the surface in terms of the features they use for this type of programming. E2E tests are pretty simple if you follow one of the patterns you mentioned. (Btw, if you're building an SPA, then the Page Object Model is not what you want. Prefer a Component Object Model instead. It's the same thing, but focused on smaller, reusable components, rather than pages. I see this alot, and authors don't understand why they can't port part of one page to another area in the code where they need it. It's because they failed to understand the component based nature of modern SPA front-ends)

4. Parallel by default. I've written frameworks that run 600+ tests in under 20 minutes. Based on you're infra, you should be able to scale tests at the click of the button. Technically, it's possible to run 100s, if not 1000s of tests at the same time. This drastically stops wasting everyone's time waiting for the results of the "the big regression run". It also forces you to maintain the rule of totally independent tests. Make sure your tests don't depend on database state (always create new, or properly seed the db on demand) and you're gold.

5. Invest in your teams training. Far too often, automation goes to a QA member that's just technical enough to make something happen, but not technical enough to understand how easy some things are to, say a software engineer. The QA person watches one course, maybe copies some code from GitHub repos, or reads some blog post. They then spread what they learned around to the rest of the team. The rest of the team "seems" to become productive at building this suite out. But, without anyone digging into what these tools do, how they work, or that has ever even made a web app themselves, that suite will be toast in a couple years. Make sure that at least one of those QA people have written web app before. Doesn't have to be a full blown thing, just that they understand where business logic occurs, what these frameworks do, how easy it is to add data-testids, etc...

Open-Weight Models Are Getting Serious: GLM 4.7 vs. MiniMax M2.1

https://blog.kilo.ai/p/open-weight-models-are-getting-serious
1•ms7892•1m ago•0 comments

Using AI for Code Reviews: What Works, What Doesn't, and Why

https://entelligence.ai/blogs/entelligence-ai-in-cli
1•Arindam1729•1m ago•0 comments

Show HN: Solnix – an early-stage experimental programming language

https://www.solnix-lang.org/
1•maheshbhatiya•1m ago•0 comments

DoNotNotify is now Open Source

https://donotnotify.com/opensource.html
1•awaaz•3m ago•1 comments

The British Empire's Brothels

https://www.historytoday.com/archive/feature/british-empires-brothels
1•pepys•3m ago•0 comments

What rare disease AI teaches us about longitudinal health

https://myaether.live/blog/what-rare-disease-ai-teaches-us-about-longitudinal-health
1•takmak007•9m ago•0 comments

The Brand Savior Complex and the New Age of Self Censorship

https://thesocialjuice.substack.com/p/the-brand-savior-complex-and-the
1•jaskaransainiz•10m ago•0 comments

Show HN: A Prompting Framework for Non-Vibe-Coders

https://github.com/No3371/projex
1•3371•11m ago•0 comments

Kilroy is a local-first "software factory" CLI

https://github.com/danshapiro/kilroy
1•ukuina•21m ago•0 comments

Mathscapes – Jan 2026 [pdf]

https://momath.org/wp-content/uploads/2026/02/1.-Mathscapes-January-2026-with-Solution.pdf
1•vismit2000•23m ago•0 comments

80386 Barrel Shifter

https://nand2mario.github.io/posts/2026/80386_barrel_shifter/
2•jamesbowman•24m ago•0 comments

Training Foundation Models Directly on Human Brain Data

https://arxiv.org/abs/2601.12053
1•helloplanets•24m ago•0 comments

Web Speech API on HN Threads

https://toulas.ch/projects/hn-readaloud/
1•etoulas•27m ago•0 comments

ArtisanForge: Learn Laravel through a gamified RPG adventure – 100% free

https://artisanforge.online/
1•grazulex•27m ago•1 comments

Your phone edits all your photos with AI – is it changing your view of reality?

https://www.bbc.com/future/article/20260203-the-ai-that-quietly-edits-all-of-your-photos
1•breve•28m ago•0 comments

DStack, a small Bash tool for managing Docker Compose projects

https://github.com/KyanJeuring/dstack
1•kppjeuring•29m ago•1 comments

Hop – Fast SSH connection manager with TUI dashboard

https://github.com/danmartuszewski/hop
1•danmartuszewski•30m ago•1 comments

Turning books to courses using AI

https://www.book2course.org/
2•syukursyakir•31m ago•0 comments

Top #1 AI Video Agent: Free All in One AI Video and Image Agent by Vidzoo AI

https://vidzoo.ai
1•Evan233•31m ago•1 comments

Ask HN: How would you design an LLM-unfriendly language?

1•sph•33m ago•0 comments

Show HN: MuxPod – A mobile tmux client for monitoring AI agents on the go

https://github.com/moezakura/mux-pod
1•moezakura•34m ago•0 comments

March for Billionaires

https://marchforbillionaires.org/
1•gscott•34m ago•0 comments

Turn Claude Code/OpenClaw into Your Local Lovart – AI Design MCP Server

https://github.com/jau123/MeiGen-Art
1•jaujaujau•35m ago•0 comments

An Nginx Engineer Took over AI's Benchmark Tool

https://github.com/hongzhidao/jsbench/tree/main/docs
1•zhidao9•37m ago•0 comments

Use fn-keys as fn-keys for chosen apps in OS X

https://www.balanci.ng/tools/karabiner-function-key-generator.html
1•thelollies•37m ago•1 comments

Sir/SIEN: A communication protocol for production outages

https://getsimul.com/blog/communicate-outage-to-ceo
1•pingananth•38m ago•1 comments

Show HN: OpenCode for Meetings

https://getscripta.app
2•whitemyrat•39m ago•1 comments

The chaos in the US is affecting open source software and its developers

https://www.osnews.com/story/144348/the-chaos-in-the-us-is-affecting-open-source-software-and-its...
1•pjmlp•41m ago•0 comments

The world heard JD Vance being booed at the Olympics. Except for viewers in USA

https://www.theguardian.com/sport/2026/feb/07/jd-vance-boos-winter-olympics
76•treetalker•42m ago•16 comments

The original vi is a product of its time (and its time has passed)

https://utcc.utoronto.ca/~cks/space/blog/unix/ViIsAProductOfItsTime
1•ingve•49m ago•0 comments