
Learn how playback speed can boost your study efficiency for Java unit testing. Use speed-watching techniques from 1x to 2x, balancing comprehension with time savings and starting slow to adjust.
Discover why unit testing matters by validating a single method in isolation with automated checks. See how unit tests run in milliseconds to verify outputs and catch defects.
Set up your first JUnit test by creating a new Maven project in Eclipse, organizing code in src/main/java and tests in src/test/java, and adding JUnit 4 to the build path.
Refactor and rename the first JUnit test to clearly indicate the tested method, split conditions into separate public void tests, and reduce duplication with a class-level instance and assertEquals.
Learn how @Before and @After run before and after every test method to handle setup and teardown, creating fresh test data and cleaning up after tests.
Learn how to test exceptions in JUnit by triggering a null pointer exception with Arrays.sort on a null array, and declaring expected exceptions with @Test(expected=...).
Organize Java unit tests into suites to run selective groups. Create a JUnit test suite, include multiple test classes with @SuiteClasses, and execute only the chosen tests.
Explore core Java unit testing with JUnit and Mockito, covering basics, exceptions, and performance, plus Mockito advanced features, annotations and runners, and Powermock integration for static methods and constructors.
Explore unit testing with Mockito by defining the system under test, creating a to-do service and a to-do business implementation, and using stubs to drive tests.
Master Mockito by creating mocks and replacing stubs with when-then-return in a TodoService test. Learn to configure static imports, IDE hints, and basic mock behavior in JUnit workflows.
Learn how to mock the java.util List with Mockito, stub methods to return multiple values, use argument matchers like anyInt, and throw exceptions in tests.
Master verifying mock interactions in JUnit and Mockito by testing that specific methods are called. Verify not called, or called a precise number of times, using verify and related patterns.
Add the hamcrest library to your pom and write readable assertions with Hamcrest matchers for lists, arrays, and empty or null strings, including size and items checks.
Master Mockito annotations such as @Mock, @InjectMocks, @RunWith, and @Captor to auto-wire dependencies, reduce boilerplate, and improve test readability with argument captors.
Learn how to use mocks and spies in Mockito: wrap a real object, override specific methods, verify calls, and decide when to use a spy for legacy code.
Explore why Mockito forbids stubbing final or private methods and promotes testing via public interfaces, and note limitations on final and static method mocks.
Writing Great Unit Tests distinguishes Good Programmers from Great Programmers.
In this course, you will learn how to Write Great Java Unit Tests with Mockito and JUnit.
WHAT OUR LEARNERS ARE SAYING:
5 STARS - When I’ve started this course I had very basic knowledge of JUnit and Mockito and now everything is clearer. It is a very good course for beginners. Everything was very well explained.
5 STARS - As always, Ranga offers an excellent way of teaching: coding from scratch, good explanation, useful examples for the real world job. He is not only an experienced programmer, but also a great teacher. I learned more than I expected. Thanks
5 STARS - It was my long time wish to learn Mockito and this instructor nailed it. Best 5hrs I spent ever. He is really good in what he is doing.
5 STARS - This course is a great tutorial to unit testing and standard practices of mocking. I would recommend it to even experienced developers who would be surprised to find some new ideas in here. Explanations are precise and detailed. Well done.
5 STARS - Very interesting course with good examples. Every topic was easy to understand because of author's awesome explanation. I rate this course as 5/5.
5 STARS - Very good course. The approach is very systematic and step by step. I really like the combination of theory and practical goes hand by hand. The journey from JUnit to Mockito to Powermock is very well described.
COURSE HIGHLIGHTS
You take 12 steps with JUnit and 18 steps with Mockito into unit testing proficiency.
Mocking with Mockito
Step 01 : Set up an Eclipse Project with JUnit and Mockito frameworks. First Green Bar.
Step 02 : Example to start understanding why we need mocks.
Step 03 : What is a stub? Create an unit test using Stub? Disadvantages of Stubs.
Step 04 : Your first Mockito code! Hurrah!!! Lets use Mockito to mock TodoService.
Step 05 : Stubbing variations with Mockito. A few mockito examples mocking List class : Multiple return values, Argument Matchers and throwing exceptions.
Step 06 : Introduction to BDD. Given When Then. BDD Mockito Syntax.
Step 07 : How to verify calls on a mock? Verify how many times a method is called. We will add deleteTodo method to the TodoService.
Step 08 : How to capture an argument which is passed to a mock?
Step 09 : Hamcrest Matchers.
Step 10 : Let's simplify things with Mockito Annotations. @Mock, @InjectMocks, @RunWith(MockitoJUnitRunner.class), @Captor
Step 11 : JUnit Rules. Using MockitoJUnit.rule() instead of @RunWith(MockitoJUnitRunner.class).
Step 12 : Real world Example with Spring
Step 13 : What is a spy? How to spy with Mockito?
Step 14 : Some Theory : Why does Mockito not allow stubbing final and private methods?
Step 15 : Using PowerMock and Mockito to mock a Static Method.
Step 16 : Using PowerMock and Mockito to invoke a private Method.
Step 17 : Using PowerMock and Mockito to mock a constructor.
Step 18 : Good Unit Tests.
JUnit Framework
Step 01 : Need for Unit Testing
Step 02 : Setting up your First JUnit
Step 03 : First Successful JUnit. Green Bar and assertEquals
Step 04 : Refactoring Your First JUnit Test
Step 05 : Second JUnit Example assertTrue and assertFalse
Step 06 : @Before @After
Step 07 : @BeforeClass @AfterClass
Step 08 : Comparing Arrays in JUnit Tests
Step 09 : Testing Exceptions in JUnit Tests
Step 10 : Testing Performance in JUnit Tests
Step 11 : Parameterized Tests
Step 12 : Organize JUnits into Suites
Start Learning Now. Hit the Enroll Button!