Unit Testing like a Pro - Towards a Testable Design

Methodology & Culture

Focusing on the creative work without being terrified of breaking the existing behavior can make software development very addictive! Good automated tests can buy you that!

However, if your tests are not maintainable they may end up slowing you down and causing you painful headaches, compilation errors and spurious failures. To avoid that, your unit tests should be significant; expressive; clean; DRY; non-overlapping; and blazing fast. Writing good tests becomes the toughest challenge for any developer, no matter how battle-hardened: you need to balance risk with test maintenance costs, while looking out for test design smells that call for [risky] refactoring to drive your design towards a set of key principles (included:).

Principles that will end up shaping the way you craft the Production code itself. Because in the end, a good, clean design is more important than coverage%.

But testing gives you the best feedback to get there.

Grab a black coffee and join this snippet from Victor’s Pro Unit Testing #training, to learn about testing priorities, buggy tests, the shared @Before, Mocks vs Stubs and how to reduce them by "purifying" your logic, testing Legacy Code and refactoring @Spy-es out.

All of that in an entertaining, dynamic and memorable session.

Design Principles
Unit Testing

Victor Rentea

Independent + IBM

Victor is a Java Champion, and one of the top Technical Trainers in Bucharest, having trained by now more than 1.5K developers in 30+ companies throughout Europe. He is Lead Architect at IBM, practicing Pair Programming and Refactoring every day. Victor regularly speaks at top international conferences: his live-coding sessions are insane, lightning-fast but well crafted, full of enthusiasm, deep insights and take-away tips. Every month, Victor holds a community meetup, in any city he travels for classes. In Bucharest, after organizing the largest 4 JUG meetups in history, Victor started the Bucharest Software Craftsmanship Community in which he runs regularly free coding webinars (for now, spoken in Romanian). His personal commitment is to seed passion for writing clean, professional code. You can find Victor on Twitter (@victorrentea), LinkedIN or Facebook, or check out

Talks by tracksTalks by session typesList of SpeakersSchedule