Testing Spring Boot: Beginner to Guru
4.4 (985 ratings)
Course Ratings are calculated from individual students’ ratings and a variety of other signals, like age of rating and reliability, to ensure that they reflect course quality fairly and accurately.
8,650 students enrolled

Testing Spring Boot: Beginner to Guru

Become an Expert Testing Java and Spring Boot Applications using JUnit 5, Mockito, Spring Boot, and More!
Bestseller
4.4 (985 ratings)
Course Ratings are calculated from individual students’ ratings and a variety of other signals, like age of rating and reliability, to ensure that they reflect course quality fairly and accurately.
8,652 students enrolled
Created by John Thompson
Last updated 1/2020
English
English, French [Auto-generated], 2 more
  • Portuguese [Auto-generated]
  • Spanish [Auto-generated]
Current price: $139.99 Original price: $199.99 Discount: 30% off
5 hours left at this price!
30-Day Money-Back Guarantee
This course includes
  • 16.5 hours on-demand video
  • 3 articles
  • 49 downloadable resources
  • Full lifetime access
  • Access on mobile and TV
  • Certificate of Completion
Training 5 or more people?

Get your team access to 4,000+ top Udemy courses anytime, anywhere.

Try Udemy for Business
What you'll 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
Course content
Expand all 212 lectures 16:45:26
+ Introduction
6 lectures 18:07

Meet your instructor John Thompson, founder of Spring Framework Guru, Speaker at Spring One, former Spring Source consultant

Preview 01:38

Welcome to the Testing Spring Boot course!

Preview 02:02
Getting the Most out of your Testing Spring Boot Course
08:59
Is Your IDE Free Like a Puppy?
04:00
IntelliJ 120 Day Trial
00:41
Slack Community Exclusive to Testing Spring Boot Course!
00:47
+ Introduction to Testing Software
6 lectures 42:39

Introduction to testing software.

Preview 01:39

See a very simple JUnit 5 unit test.

JUnit Test Example
04:29

Overview of common testing frameworks for Java and Spring Boot. Includes: JUnit 4, JUnit 5, TestNG, Spock, Mockito, Selenium, and GEB.

Common Testing Frameworks for Java
09:24

Learn why having proper test coverage via JUnit tests is needed to realize the benefits of CI/CD for your Spring Boot applications.

Beyond Testing with CI and CD
11:00
Conclusion
01:39
+ Test Driven Development By Example
21 lectures 02:19:50

Section overview for learning Test Driven Development using JUnit 5.

Preview 02:44

Learn about the original author of JUnit, Kent Beck, and his passion for Test Driven Development.

Preview 07:47

In this lesson, we review the development requirements for completing the TDD section of the course using JUnit 5.

Preview 04:21
Degenerate Objects
04:54
Equality for All
04:32
Privacy
02:52
Franc-ly Speaking
04:25
Equality for All, Redux
04:26
Apples and Oranges
03:11
Makin' Objects
07:53
Times We're Livin' In
07:22
Interesting Times
07:13
The Root of All Evil
03:53
Addition, Finally
08:36
Make It
15:06
Change
16:14
Mixed Currencies
05:21
Abstraction, Finally
06:39
Viewing Test Coverage from IntelliJ
09:21
Conclusion
01:30
+ Getting Started with JUnit 5
10 lectures 43:58

Overview of the Getting Started with JUnit 5 section of the course.

Introduction to Getting Started with JUnit 5
01:03

Overview of JUnit 5.

Preview 08:48

How to add the required dependencies for JUnit 5 to your Maven POM.

JUnit Maven Project Setup
06:43

Simple "Hello World" example in JUnit 5.

Preview 05:15

See how to initialize properties using the JUnit @Before annotation.

Initializing Properties with JUnit 5 @BeforeEach
03:54
JUnit 5 Test Instance Lifecycle Demo
04:34
Running JUnit 5 Tests from Command Line with Maven
05:09
JUnit Gradle Project Setup
04:41
Running JUnit 5 Tests from Command Line with Gradle
02:54
Conclusion of Getting Started with JUnit 5
00:57
+ Testing Java with JUnit 5
17 lectures 01:20:15

Introduction to this section of the course, which is an introduction to JUnit 5.

Introduction to Testing Java with JUnit 5
00:52

In this lesson we review the code of a project we will use to write tests using JUnit 5.

Java Test Project Code Review
05:00
Overview of JUnit Assertions
05:27
JUnit Assertions
05:22
JUnit Grouped Assertions
06:22
JUnit Dependent Assertions
04:59
Skipping JUnit Tests
04:14
JUnit Test Display Names
02:38
Testing Expected Exceptions
04:33
Testing Timeouts
05:25
JUnit Assumptions
03:59
Conditional JUnit Test Execution
05:32
Using AssertJ with JUnit
03:48
Using Hamcrest with JUnit
05:09
Assignment - Write JUnit Test for Vet Controller List Vets
03:18
Assignment Review - Write JUnit Test for Vet Controller List Vets
12:47
Conclusion
00:50
+ Advanced JUnit Testing
19 lectures 01:11:31

Introduction to the section of the course on advanced features of JUnit 5.

Introduction to Advanced JUnit Testing
01:05

Learn how you can tag and filter JUnit tests.

Tagging and Filtering JUnit Tests
04:05

Learn how to use JUnit nested tests.

JUnit Nested Tests
07:19

JUnit 5 brings the capability to use Java interfaces for your unit tests

JUnit Test Interfaces
03:18

You can use Java default methods with your JUnit 5 tests.

Using JUnit Default Test Methods
02:56

See how to repeat JUnit tests multiple times.

Repeating Tests with JUnit 5
03:30

JUnit 5 has the ability to inject dependencies into your tests.

JUnit Test Dependency Injection
04:13

Student assignment covering JUnit dependency injection.

Assignment - JUnit Dependency Injection
01:29

Review of student assignment covering JUnit dependency injection.

Assignment Review
09:56
JUnit Parameterized Tests - Value Source
04:50
JUnit Parameterized Test - Display Name
02:25
JUnit Parameterized Tests - ENUM Source
02:44
JUnit Parameterized Tests - CSV Source
04:00
JUnit Parameterized Tests - CSV File Source
04:27
JUnit Parameterized Tests - Method Provider
04:29
JUnit Parameterized Tests - Custom Provider
03:09
Unit Tests vs Integration Tests
02:57
JUnit Extensions
03:27
Conclusion
01:12
+ Test Execution
13 lectures 47:59
Introduction
01:33
Running Tests from IDE
04:05
Maven Surefire Plugin
03:56
Maven Failsafe Plugin
04:02
Maven SurefireTest Reporting
05:07
Executing JUnit Test with Tags in Maven
03:36
Running Tests from CI Builds With Maven
07:20
CircleCI Build Badge
02:24
Gradle Project Overview
05:10
Running JUnit Tests from Gradle
03:40
Integration Tests With Gradle
02:44
Gradle JUnit Test Reports
03:06
Conclusion
01:16
+ JUnit 4 to JUnit 5 Migration Guide
7 lectures 23:57
Introduction
02:47
JUnit 4 Example Project
03:00
Differences Between JUnit 4 and JUnit 5
05:31
JUnit 5 Maven Dependencies and Configuration
05:21
Converting JUnit 4 Tests to JUnit 5
03:25
Removing JUnit 4
02:33
Conclusion
01:20
+ Getting Started with Mockito
15 lectures 54:45
Introduction
02:14
Introduction to Mockito
04:36
Maven Dependencies for Mockito
02:45
Creating Mockito Mocks Inline
02:51
Creating Mockito Mocks with Annotations
03:14
JUnit Mockito Extension
02:59
Injecting Mocks with Mockito
04:33
Verify Interactions With Mockito Mocks
04:08
Assignment - Write Mockito Tests for Vet Service
01:43
Assignment Review
03:46
Returning values from Mockito Mocks
04:15
Argument Matchers
02:52
Assignment - Complete Tests for Visit Service
02:01
Assignment Review
10:50
Conclusion
01:58
+ Behavior Driven Mockito
8 lectures 24:56
Introduction
00:50
Introduction to Behavior Driven Development
02:33
BDD Mockito
03:25
BDD Verification in Mockito
03:44
Refactoring Speciality Service to BDD
06:08
Assignment - BDD Visit Service
01:07
Assignment Review
06:37
Conclusion
00:32
Requirements
  • Java Programing
  • Spring Framework
  • Spring Boot
  • Basic SQL Skills
  • IntelliJ or Eclipse
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. 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 Mocktio to mock dependent objects in your unit tests.

Who this course is for:
  • Spring Framework Developers
  • Java Developers who wish to create quality software
  • Beginner Java developers seeking marketable skills