Mockito Made Clear
Java Unit Testing with Mocks, Stubs, and Spies
by: Ken Kousen
Published | 2023-01-24 |
---|---|
Internal code | mockito |
Print status | In Print |
Pages | 87 |
User level | Intermediate |
Keywords | java, jvm, mockito, testing, junit, unit testing, oop |
Related titles | |
ISBN | 9781680509670 |
Other ISBN |
Channel epub: 9798888650134 Channel PDF: 9798888650141 Safari: 9798888650127 |
BISACs | COM051280 COMPUTERS / Programming Languages / JavaCOM051330 COMPUTERS / Software Development & Engineering / Quality Assurance & TestingCOM051330 COMPUTERS / Software Development & Engineering / Quality Assurance & Testing |
Highlight
Mockito is the most popular framework in the Java world for automating unit testing with dependencies. Learn the Mockito API and how and when to use stubs, mocks, and spies. On a deeper level, discover why the framework does what it does and how it can simplify unit testing in Java. Using Mockito, you’ll be able to isolate the code you want to test from the behavior or state of external dependencies without coding details of the dependency. You’ll gain insights into the Mockito API, save time when unit testing, and have confidence in your Java programs.
Description
If you’ve only ever run a few JUnit tests or injected stubs into classes to return preset values, it’s time to level up your Java toolbox. Dependencies on other classes and external resources can obscure issues and make bugs hard to detect. You need to test classes in isolation to truly pinpoint your problems. And while you could write dummy classes to replace dependencies yourself, Mockito automates the process and helps you fix your code faster.
Start with the Mockito API to generate fake classes for dependencies, configure how each should respond when their methods are called, and verify that the class under test interacts with dependencies the way you’d expect. Next, build unit tests with the Mockito framework and feel confident not just that methods are called, but that they are called the correct number of times and in the correct order. Along the way, follow clear test examples based on JUnit 5 to create stubs, mocks, and spies and find the source of any problems lurking in Java classes.
Save time, write better code, and have more confidence in your Java programs with Mockito.
Contents and Extracts
- Foreword to Mockito Made Clear
- Acknowledgments
- Preface
- Build a Testing Foundation
- Saying Hello to Mockito
- Counting Astronauts by Spaceship excerpt
- Creating the Basic Classes
- Adding Unit and Integration (End-to-End) Tests
- Wrapping Up
- Work with the Mockito API
- Selecting Our System to Test
- Creating Mocks and Stubs
- Setting Expectations
- Using Mocks and Stubs in the Astro Project excerpt
- Wrapping Up
- Use Built-in and Custom Matchers
- Using the Existing Argument Matchers
- Creating Custom Argument Matchers excerpt
- Verifying the Order of Methods Called
- Wrapping Up
- Solve Problems with Mockito
- Deciding Between Mockito and BDDMockito
- Testing void Methods Using Interactions
- Capturing Arguments
- Setting Outputs Based on Inputs with Custom Answers
- Spying to Verify Interactions
- Wrapping Up
- Use Mockito in Special Cases
- Mocking Final Classes and Methods
- Using Mockito with Android
- Mocking Static Methods
- Mocking Constructors
- Working with the Spring Framework
- Deciding When Not to Use Mockito
- Wrapping Up
- Running Mockito Tests
- Steps Common to All JUnit Versions
- JUnit 5
- JUnit 4