The Agile Way

The Agile Way

Share this post

The Agile Way
The Agile Way
Real End-to-End UI Automated Regression Testing: The Best Weapon for Addressing Technical Debt

Real End-to-End UI Automated Regression Testing: The Best Weapon for Addressing Technical Debt

Why? It eliminated Fear.

Zhimin Zhan's avatar
Zhimin Zhan
Aug 18, 2024
∙ Paid
2

Share this post

The Agile Way
The Agile Way
Real End-to-End UI Automated Regression Testing: The Best Weapon for Addressing Technical Debt
Share

Recently, I shared a meme and my thoughts on technical debt in software development, as reflected in the title of this article.

https://www.linkedin.com/feed/update/urn:li:activity:7219436994328711169

I know “End-to-End UI Automated Regression Testing: The Best Weapon for Addressing Technical Debt” for a simple reason: I verified this claim hundreds of times in numerous client projects and my own. This article explains.

Technical Debt

I will elaborate further (with examples) in this article. Let’s begin with the definition.

Technical Debt: “presents an actual or contingent liability whose impact is limited to internal system qualities, primarily maintainability and evolvability”. (source: Wikipedia)

Quite clear, right? The software (with technical debts) works, but not well.

Nearly all software professionals have heard of this: “If it works, don’t touch it”.

https://www.dudeme.in/products/if-it-works-dont-touch-half-sleeve-t-shirt

So, programmers (mind you, they are human beings; don’t quote theories in a perfect world without office politics and concerns about job security) tend to accept and work around the technical debts.

Source: a Reddit post, with 119K likes. (surely, many of those are programmers)

I believe the majority of programmers want to do good and proud work. So why do they often shy away from addressing technical debt? The answer is fear. It’s not that they lack the intention or the technical capability to correct issues and handle technical debt; rather, they lack a safety net.

“Once you touch it, it becomes your problem”. — Anonymous Software Architect

https://www.reddit.com/r/ProgrammerHumor/comments/1e9jity/ifitworks/

It's all too easy for programmers to find excuses for not addressing tech debt, such as saying, “The app still works OK. It is an existing problem, and the people who were responsible have left. Without that knowledge, I am afraid …” Really, the project managers will not force that either. Why? They fear the responsibility too.

In my 20+ years of experience, I’ve observed and actively participated in teams that effectively addressed technical debt by implementing real end-to-end UI test automation regression testing. Why did it work? Because it eliminated fear.

How Fixing Technical Debit Works?

A programmer, Toby, identifies a technical debt, such as one service that is extremely slow. He decides to take action and comes up with an idea.

Keep reading with a 7-day free trial

Subscribe to The Agile Way to keep reading this post and get 7 days of free access to the full post archives.

Already a paid subscriber? Sign in
© 2025 Zhimin Zhan
Privacy ∙ Terms ∙ Collection notice
Start writingGet the app
Substack is the home for great culture

Share