Skip to content
UdemySoftware TestingPaid courseAll LevelsCertificate

Testing Spring Boot: Beginner to Guru (Udemy.com)

Become an Expert Testing Java and Spring Boot Applications using JUnit 5, Mockito, Spring Boot, and More!

Created by: John Thompson

Last updated August 2026

icon
What you will learn

  • Learn Important Concepts behind Test Driven Development
  • Understand different types of testing - Unit, Integration, Functional
  • Master the JUnit 5 Testing API
  • Easily integrate Mockito with JUnit 5 Tests
  • Migrate JUnit 4 tests to JUnit 5
  • Test Spring Framework Applications with JUnit 5 and Mockito
  • Write Unit Tests with Spring MVC Test
  • Learn to use testing features of Spring Boot

How it compares

Against the other 281 rated Udemy courses in Software Testing on CourseDuck:

  • Rating4.2 out of 5higher than 12% of them
  • Reviews3,498#50 of 282 by number of reviews
  • Length20.8 hourslonger than 88% of them
  • Last updatedAugust 2026more recently than 85% of them

icon
Course Description

In modern software development having proper automated test coverage is considered a best practice. In this course you will learn how to test Java and Spring Boot applications using highly popular open source tools.

You will see in the first section of this course, the software testing ecosystem is very diverse. JUnit and Mockito are two of the leading testing libraries for Java. JUnit provides the test execution context, while Mockito give you power mocking capabilities. Together these libraries can be used to write unit tests, integration tests, and functional tests. You will also learn why having proper test coverage is critical to supporting other popular agile practices such as Continuous Integration and Continuous Deployment (aka CI/CD).

Agile teams all over the world consider Test Driven Development (TDD) a critical technique for producing quality software. This course begins by using JUnit 5 to demonstrate how to use TDD to create a simple Java application, then again using TDD to evolve the application to a higher level of quality and functionality.

Next, the course takes you into a deep dive of the features and functionality of JUnit 5. You will learn how to write JUnit 5 unit tests for a Java web application.

The primary focus of this course is on the JUnit 5 release. There are some very notable differences between JUnit 4 and JUnit 5. This course contains a dedicated section showing you how to migrate your JUnit 4 tests to JUnit 5.

As your testing needs become more complex, you will need to mock dependent objects.

Not sure what a mock is? It's effectively a test double. An object created for unit testing.

Mockito is the most popular mocking library used by Java developers.

If you are writing Spring Framework applications, you're likely to be injecting dependent objects into your classes. You will learn how to use the robust mocking capabilities of Mockito to mock dependent objects in your unit tests.

The first 11 sections of the course focus heavily on unit testing with JUnit 5 and Mockito. This is to help you establish a strong unit testing foundation before we start testing Spring Boot applications.

You will have no doubts when it comes to testing Java classes using JUnit 5 and Mockito.

The Spring Framework itself has some very robust testing capabilities.

We start learning to test the Spring Framework by adding the Spring Framework Testing context to our tests.

This allows us to leverage the Spring Framework's Dependency Injection capabilities right in our tests.

Properly testing Spring MVC controllers can always be a little tricky. You need to test all the things you are expecting the Spring Framework to handle for you around calls to your controllers.

This is where Spring MVC Test steps in. You will see how you can use Spring MVC Test with JUnit 5 and Mockito to properly test your Spring MVC Controllers.

The course continues showing you how to use Spring Boot test splices to bring up a minimal Spring Boot configuration for the testing of a Spring MVC RESTful controller.

Another powerful Spring project is Spring MVC REST Docs. This is a project which allows you to generate API documentation from your Spring Mock MVC tests.

Inside this course you will learn:

  • JUnit 5

  • AssertJ

  • Hamcrest Matchers

  • Mockito 2

  • Test Driven Development (TDD)

  • Behavior Driven Development (BDD) with Mockito

  • Migrating to JUnit 5 from JUnit 4

  • Running JUnit 5 tests from Maven

  • Running JUnit 5 tests from Gradle

  • Use CircleCI with Maven for Continuous Integration Testing

  • Spring MVC Test

  • JsonPath

  • Wiremock

  • Spring MVC REST Docs

Course Extra - IntelliJ IDEA Ultimate

Students enrolling in the course can receive a free 120 day trial license to IntelliJ IDEA Ultimate! Get hands on experience using the Java IDE preferred by Spring Framework professionals! 

Course Extra - Access to a Private Slack Community

You're not just enrolling in a course --> You are joining a community learning about testing Spring.

With your enrollment to the course, you can access an exclusive Slack community. Get help from the instructor and other Spring Framework Gurus from around the world - in real time! This community is only available to students enrolled in this course. 

This is a very active Slack community with over 1,000 Spring Framework Gurus!

This is the largest online community of people learning Spring in the world.

With your enrollment, you can join this community of awesome gurus!

Source Code Access

All course source code is available in GitHub. When you enroll, refer to the lesson resources for links to GitHub.

Closed Captioning / Subtitles

Closed captioning in English is available for all course videos!

PDF Downloads

All keynote presentations are available for you to download as PDFs.

Lifetime Access

When you purchase this course, you will receive lifetime access! You can login anytime from anywhere to access the course content.

No Risk - Money Back Guarantee 

You can buy this course with no risk. If you are unhappy with the course, for any reason, you can get a complete refund. The course has a 30 day Money Back Guarantee.

Enroll today and start learning about the latest tools and best practices for testing your Spring Boot applications! 

icon
Udemy Discount

The discount is applied through our link. Open the course from here and Udemy's current promotional price is applied at checkout on most courses, no code to type.

Some courses are excluded from Udemy's promotions. If the price does not drop, clear your browser cookies and use the button again.

icon
Instructor Details

John Thompson

Hi. I'm John.

I've been in the IT industry for over 25 years. Today, I specialize mainly in Java, the most successful and widely known programming language in use today. I also specialize with the Spring Framework, which the most popular open source application framework for building enterprise class applications on the Java platform. Just some of the organizations I've worked with include Visa, Kohls, Federal Home Loan Bank, and Belk Department Stores.

Through the courses I'm providing, I hope to leverage my years of experience to accelerate your learning of the Spring Framework. I'm not going to lie to you. The Spring Framework is a big framework. The environment for enterprise Java is even bigger. If you're new to Java, you have a lot to learn. I hope through the content on this web site I can accelerate your education of the Java and Spring landscape.

icon
More courses by John Thompson

$17.99

$18.99

$84.99

$84.99

$13.99

$84.99

icon
More Software Testing courses

$59.99

$84.99

$10.99

$10.99

$13.99

$149.99

icon
Reviews

4.2

3,498 ratings on Udemy

Select a bar to show only those reviews.Select the bar again to show every rating.

By Nikhil Rane on 4/12/2023

It was overall a very nice and informative course. I loved the course. The only problem which I faced was that sometimes the font size was too small in the IntelliJ Editor, so it would sometimes put additional strain on my eyes while watching the videos. So I woud highly recommend to please use higher font size in IntelliJ Idea while recording the videos. Apart from this I really appreciate the sincere efforts which the instructor had put in to make this course by typing as he teaches to provide us with the much needed practical exposure.

By Raimonds Liepiņš on 1/22/2023

I completed the course, and I am glad I completed it. However, I was expecting something else, a comprehensive explanation of testing and its principles - why do you use matchers, marshallers, bindings etc, and what they all do. Instead, John is mostly concentrating on showing different methods of unit testing - something I could easily look up myself. I feel like I just skimmed the surface and haven't got a firm grip on the topic. A small, but still annoying thing is that halfway through the course the videos are getting captured at 1080p, and I have to switch between IntelliJ and Udemy in browser all the time, despite the fact that I have a 32" monitor. It seems having two smaller monitors is better for Udemy. What's nice though is that John isn't trying to make it all perfect from the start, and, when writing tests, they don't always work the first time, so it's useful to see how to fix various errors that might come up in your own work as well.

By Bello Adamou on 3/7/2022

Testing was my weakness, i learnt a lot, i'm now able to deliver applications with high level quality. Great content. BUT! You know there's always a but, coz no human job is perfect. One thing to ameliorate about this course is the way the teacher speaks. I will ask the instructor to articulate very well and pronounce words distinctly. English is not my first language, so it makes it harder to get him when he doesn't make that effort. Fortunately, we have the subtitles which helps a lot. The content remains great. Thanks!

By Artem Stukalenko on 9/18/2021

This is a brilliant course to start learning testing. The material is easy to understand, because the instructor's explanations are very intelligible. It is obvious, that instructor is increadibly responsible person: I have passed many udemy courses, but never before had I seen git-projects attached to EVERY lesson: it is so easy to follow course programm step by step! However, some paragraphs seemed to me boring or overextended: for example, paragraph about TDD. Still, the course is brilliant and I totally recomend you start it up right now, if you're interested in testing. Thanks a lot for your hard work, John! Keep it up! :)

By Mikhail Shepelev on 8/5/2021

This course is the brilliant Java/Spring testing tutorial. All concepts are explained in a very clear and simple way. Most valuable things about this course in my opinion are following: 1) Instructor dives deep into explaining importance of tests performance, what is crucial factor for large projects. 2) Explains distinction between unit and integration testing as well as demonstrate examples how to write both types of tests with all necessary tools for it. 3) Teaches how to correctly use spring context and annotations for different types of tests. This course is recommended to every person who is interested in covering code with solid, fast and clean tests.

By Anonymized User on 1/18/2021

Very good course.. I feel reluctant to give 5 stars for two reasons: 1- The TDD section with the book. Felt a lot confusing to me with the actual application used as an example. Most of the code written there felt like a tangent to the actual course objective. 2- John mentioned a few of the annotations in his slides that he didn't explain, such as @DataJdbcTest.. most of the topics he mentioned and skipped on are very crucial for slice testing and integration testing. I enrolled into the course because I thought they will be explained. Other than that.. very well put course. Typical of a John's course.

By Luis V on 11/7/2020

This course was supposed to be on testing SpringBoot.
Not sure if he forgot about that.

By glenn opdycke-hansen on 10/24/2020

This class has useful information on creating Unit tests.
However some of the text is difficult to read on smaller displays.

By Prasad Nutalapati on 10/23/2020

The instructor is diction is little bit jarring(for lack of better word). He need to be clear, spell each word carefully so that audience can hear the words he is speaking clearly and well.
It is OK for a casual conversation to be like this, but for an instructional video he need to be little bit more precise and strongly pronouncing each word, as there would be students coming from different geographical locations. They need little bit more emphasis on diction. I for one, lived in US for 23yr, even though I have a very strong Indian accent spelling out each individual word clearly to the level of annoyance, don't mind, but others who are outside of US may feel that the Instructor is leaving out some characters of a significant word with out spelling it out full.

By Alvin Toh on 10/18/2020

Good introduction and content was relevant to how to do unit testing!

By Min Kunn Chan on 10/8/2020

Very good course. The instructor is also very knowledgeable.

By Jorge Martin on 10/5/2020

Bien ordenado y claro, introduce progresivamente la informacion, y se asimila bien

Showing 12 of 233 reviews

icon
Quality Score

No CourseDuck member has rated this course yet. Taken it? Give each part a thumbs up or down.

Content Quality
/
Video Quality
/
Qualified Instructor
/
Course Pace
/
Course Depth & Coverage
/

Overall Score : 84 / 100