Member-only story

Why JavaScript Is Not a Suitable Language for Real Web Test Automation?

JavaScript is OK for developing apps, but not for functional test automation, where its audience is beyond programmers. Ruby is a far better choice.

Zhimin Zhan
14 min readApr 15, 2021

Non-Medium Members: You can read this article free on Substack.

This article is one of the “Be aware of Fake Test Automation/DevOps Engineers” series.

from tweet: https://twitter.com/daboigbae/status/1697836752763789690

I know many JavaScript programmers/testers won’t like the title of this article. However, this is the truth from my over 15 years of observation while working in test automation. Some would argue that JS-based test automation frameworks are gaining popularity. Yes, it might be true. However, when you take the fact that most test automation failed, this recent popularity of JS-based test automation frameworks does not mean much at all.

“95% of the time, 95% of test engineers will write bad GUI automation just because it’s a very difficult thing to do correctly. ”
— Alan Page (author of ‘How We Test Software at Microsoft’ book) in an interview ‘Testing Lessons Learned at Microsoft with Alan Page’ (2015–03–17)

I have worked/consulted on projects that use most of these so-called new JS test automation frameworks. My conclusion is still the same: Avoid using JavaScript for UI test automation.

“The audience of Automated End-to-End Testing via UI is the whole team, not just automated testers and developers.” — Zhimin Zhan

First of all, automated functional testing aims to enable fast regression testing to provide quick feedback to the team. Professional test automation engineers must keep this in mind. An individual's preferences on a specific framework or language do not really matter.

--

--

Zhimin Zhan
Zhimin Zhan

Written by Zhimin Zhan

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

Responses (10)

Write a response