Eliminating Code Smells

Christian Baumann's profile
Christian Baumann

Principal Software Tester

Challenge Description

To eliminate a code smell, you first need to identify that there is a smell, then you need to come up with a way to safely remove that smell. However, removing code smells can have many advantages, such as making your code base cleaner and thus easier to read and maintain.

Instructions:

Identify code smells

Have a look at the provided code examples (or pick some code that you or your team has created) and identify anything that you think is a code smell. Also think about why your finding is a code smell.

Eliminate code smells

Eliminate the found code smells by applying proper programming principles, maybe by introducing meaningful names for variables or removing duplication.

Also think about:

  • Advantages & disadvantages of your solution

  • How to ensure you didn’t introduce any bugs or other code smells?

Wrap-up:

Removing code smells is a good way to improve the code base in many ways. It speeds up development, decreases the risk of bugs & failures as well as technical debt. Also, it makes it easier to maintain the application in the future, by any programmer, including yourself.

What you’ll learn
  • Follow good programming techniques & implement good design
  • Decrease the risk of future bugs & failures
  • Reduce the risk of technical debt

Prerequisites

Example code that can be used in this activity can be found at https://christianbaumann.dev/workshops/2022-testbashuk-workshop-codesmells-101/

Resources

The Deadly Sins Of Acceptance Scenarios – Mark Winteringham
Panel Discussion: Automation Stories
Stubbing & Service Virtualization Explained
Partner Peek - Enov8 #1
Testing Smarter, Not Harder with DesignWise
TestChat 5: Discussing Device Testing
Starting Out With UI Automation Using SpecFlow
Three Ways To Measure Unit Testing Effectiveness
Forensic Testing: Uncovering Quality Issues Using Your Organization’s Code Repository
This open-source tool is the #1 Automation Test Reporting Tool loved by the community and the developing team plans to share their knowledge via a learning course. Stay tuned!
Explore MoT
TestBash Brighton 2024
Thu, 12 Sep 2024, 9:00 AM
We’re shaking things up and bringing TestBash back to Brighton on September 12th and 13th, 2024.
MoT Intermediate Certificate in Test Automation
Elevate to senior test automation roles with mastery in automated checks, insightful reporting, and framework maintenance