Unit Testing

Fix and Test Bugs

This project is part of the liveProject series Unit Testing with Java, JUnit 5, and IntelliJ IDEA.
intermediate Java • JUnit 5 • Mockito
skills learned
using IntelliJ IDEA to write and execute tests • deriving tests from existing bugs • codifying current behavior as a test • using tests to drive bug fixes • changing tests so they fail until a bug is fixed
Max Guernsey
1 week · 10 hours per week · INTERMEDIATE

placing your order...

Don't refresh or navigate away from the page.

this free project is part of a
multi-part series

try now
Check your email for instructions on accessing Fix and Test Bugs (liveProject)
continue shopping
go to cart

Look inside
In this liveProject, you’ll find and fix some long-term bugs in a legacy library. You’ll write a test to characterize a bug in how certain assets are selected for a special display, then modify the test to turn it into a bugfix. Once you’ve squashed that bug, you’ll repeat the process to tackle two more common bugs for Java applications.

project author

Max Guernsey, III
Max Guernsey has over twenty years experience in software development. He has worked on a wide range of products and technologies, including C++ class libraries, financial analysis applications, C# and Java backends, and even multiplatform video games. He is an experienced consultant and his “coaching from the keyboard” approach provides hands-on experience to learners in all aspects of modern software development.


This liveProject is for Java developers who want to increase their testing capabilities. To begin this liveProject you will need to be familiar with:

  • Basic Java
  • Junit 5

you will learn

In this liveProject, you’ll learn to develop tests that fix specific bugs, and that stay in place to guard against regressions.

  • Using IntelliJ IDEA to write and execute tests
  • Deriving tests from existing bugs
  • Codify current behavior as a test
  • Using tests to drive bugfixes
  • Changing tests so they fail until a bug is fixed


You choose the schedule and decide how much time to invest as you build your project.
Project roadmap
Each project is divided into several achievable steps.
Get Help
While within the liveProject platform, get help from other participants.
Compare with others
For each step, compare your deliverable to the solutions by the author and other participants.