EtusivuTestauskoulutuksetPractical Test-Driven Development

Practical Test-Driven Development

Test Driven Development (TDD) is a programming technique rediscovered by programming 
guru Kent Beck in the 1990s. It is about writing automatic self-verifying tests, so-called unit 
tests, before writing production code.
The basic steps in TDD consist of:
1. Write a failing test
2. Implement minimally to make the test pass
3. Refactor - make the code as good as possible
Regardless of how simple the above looks, TDD is often perceived as difficult to get started 
with. To be able to test code in a good way, you must also know what characterizes good code, 
which means the course extends into related topics such as software design, refactoring and 
clean code


Koulutusmuoto

Remote


Kesto

1 päivä


Hinta

Target Group

The course is intended for developers. Since we are using techniques such as trainer 
demonstration, pairing and mob-programming it is also okay that not all participants are 
developers. The course is by standard held in Java and participants of the course are expected 
to have their own development environment (at least one per pair for the pairing exercises). The 
course can be requested to be held in another language than Java (TDD is language agnostic). 
Previous experience from unit testing is good but not a requirement

Goal

• Increased understanding of code quality
• Techniques for refactoring
• Ability to apply TDD to simpler problems
• Avoid common pitfalls
• A source of inspiration and catalog of future learning about TDD
After completing the course you are familiar with TDD and its use case. You are able to apply it 
to simpler problems at work. You are able to recognize good code from bad code. You will have 
a catalogue for future learning in the topic.

Prerequisites

The course is intended for IT professionals involved in Software development

Course Content

Test driven development
• TDD theory inspirational seminar and demonstration
• Q & A
Unit testing best practices
• FIRST
• Bad tests
Clean code
• Clean code
• Refactoring
• Design principles
• Demonstrative pairing
TDD Practical exercises
• Mob programming 
• Pair programming