Annelore Egger

How Unit Testing Saved My Career

What if the secret to better application architecture wasn't design patterns, but simply writing testable code?

How Unit Testing Saved My Career
#1about 3 minutes

How unit testing helps overcome early programming struggles

Unit testing provides quick feedback and encourages better code structure, making it easier for new programmers to understand and debug their work.

#2about 2 minutes

Structuring clear and simple unit tests

Adopting a consistent structure like "Given-When-Then" and using descriptive method names makes tests easier to understand and maintain.

#3about 4 minutes

How writing testable code leads to cleaner code

Refactoring a monolithic method into smaller, testable units naturally improves code readability, maintainability, and overall quality.

#4about 2 minutes

Using test-driven development to guide implementation

Test-driven development (TDD) forces you to think about requirements first, leading to more structured code and serving as a form of documentation.

#5about 3 minutes

Isolating dependencies with mocking frameworks like Mockito

Mocking frameworks like Mockito allow you to isolate the unit under test by replacing external dependencies with controlled mock objects.

#6about 3 minutes

The vicious cycle of untestable legacy code

A lack of tests in legacy code creates a vicious cycle where developers fear refactoring, leading to worse code that is even harder to test.

#7about 3 minutes

Using parameterized tests for efficient test coverage

Parameterized tests in JUnit allow you to run a single test method with multiple input values, simplifying the process of covering various scenarios and edge cases.

#8about 3 minutes

Challenging and simplifying complex test setups

When faced with a complex test setup, challenge its necessity by asking why it exists and explore simplifying it by improving code testability or using mocks.

#9about 2 minutes

Understanding the test pyramid and single responsibility

The test pyramid guides the ratio of unit, integration, and end-to-end tests, with units being small pieces of code that adhere to the single responsibility principle.

#10about 1 minute

Final thoughts on unit testing as a developer's tool

Treat unit tests as a valuable development tool, and if they become a source of friction, investigate and challenge the underlying code or test setup complexity.

Related jobs
Jobs that call for the skills explored in this talk.

Featured Partners

From learning to earning

Jobs that call for the skills explored in this talk.

Manual Tester

Manual Tester

Uni Systems

JIRA
Scrum
Agile Methodologies
Integration Testing