Learn TDD in Java

Learn Test Driven Development through a concise programming interview question
Learn TDD in Java
File Size :
270.66 MB
Total length :
0h 47m



Sam Atkinson


Last update




Learn TDD in Java

What you’ll learn

Write code, tests first
Use IDE shortcuts more proficiently
Understand what an interviewer is looking for in a pairing code interview

Learn TDD in Java


A good basic understanding of Java
IntelliJ IDE (available free from http://cjiq.co/intellij)


This course teaches Test Driven Development from the ground up using an example paired programming interview question.  This interview question is taken from a real interview which I ran for several years and continues to be used in a number of institutions.
The interview is conducted as a TDD, pair-programming challenge. This is important to note. It was not the eventual solution that mattered so much as the journey there. Sometimes we would hire people who didn’t get the solution, and other times we wouldn’t hire people who did.
The Challenge
Implement a “movie store” (like blockbusters or Netflix). The store needs to hold a number of movies (let’s say a maximum of 100, but for our testing purposes 4 or 5 is sufficient). We need to be able to search the movie store for titles based on a number of different criteria.
Sounds pretty simple huh?
It’s amazing how many people it trips up though.
In the interview we would reveal each requirement one by one. As we’re doing TDD we’re building the requirements one at a time. Just like in the interview, I’ll reveal each requirement one at a time.
The goals
The solution should have beautiful, clean code, without repetition or hacks. It should be code that you would be proud to have in production.
It should be well tested.
You do not need to worry about databases, threading, user interfaces, API access or 3rd party libraries. This a pure Java question.
You should be mindful about performance, but it’s not a major concern.
You should not over engineer the solution.
The solution
Don’t worry if you’ve never done TDD- I even teach you how to do TDD from the start.
This course is approximately an hour long and comes with all the code available to download.
The training is about much more than just coming up with a solution- we discuss many of the areas that candidates fall down in interview and how to avoid them.


Section 1: Introduction

Lecture 1 What is TDD?

Lecture 2 IntelliJ Cheat Sheets

Lecture 3 Download IntelliJ

Lecture 4 Project creation with IntelliJ and Maven

Lecture 5 Project Overview

Section 2: Learn TDD

Lecture 6 The Does Nothing Test

Lecture 7 Do the simplest thing possible

Lecture 8 A better test

Lecture 9 Our first proper implementation

Lecture 10 Iterating our test coverage

Lecture 11 You must know how to operate your IDE

Lecture 12 Improving our implementation

Lecture 13 You don’t need null checks

Lecture 14 Refactoring our test for ease and beauty

Lecture 15 The second requirement

Lecture 16 Cut refactoring time down from 15 minutes to 15 seconds with this one shortcut

Lecture 17 A harder requirement with edge cases

Lecture 18 After Red and Green comes Refactor

Lecture 19 The big solution unveil

Lecture 20 Java 7 code solution

Lecture 21 Moving the solution to Java 8

Lecture 22 Final Solution Code

Junior/Mid level Java developers who want to know about TDD,Anyone going for a Java coding interview

Course Information:

Udemy | English | 0h 47m | 270.66 MB
Created by: Sam Atkinson

You Can See More Courses in the Developer >> Greetings from CourseDown.com

New Courses

Scroll to Top