Modern Agile Pair Programming Mob Programming Coaching Java Java EE Enterprise Java / Jakarta EE Monoliths Microservices Software Architecture Continuous Software Development
You're constantly learning new tools and technologies. That's important since this is the foundation of our progress. But what about the old (probably still valid) ideas behind new developments? Especially when it comes to test automation, I noticed that newcomers often accept existing procedures, copy them and question them too little. So I prepared this talk to share some of the old ideas.
We'll consider the following questions: How do I structure my tests? How do I make my tests readable, understandable and maintainable? How do I test something that isn't there yet? And how does all of this support easy design refactorings? We'll see basic, pragmatic, good practices – and of course we'll borrow some ideas from TDD, Clean Code and even a little bit from Domain Driven Design.
Testing professionals won't discover much new. But if you're unsure about writing tests, you'll get tried and tested suggestions. For tests that support our team and our software development – and not just fulfil some test coverage metric.
The session will be mostly live coding, with only a few introductory slides. We'll cover unit tests in Java, but the underlying ideas can easily be transferred to other test types and programming languages.
Thomas works as a Technical Agile Coach at Die Techniker (TK) in Hamburg. Together with his coaching colleagues, he supports teams in always getting a little bit better at collaboration and agile programming practices – by encouraging pair and team programming, TDD, test automation and the like.