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.
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 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 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.
Meet your instructor John Thompson, founder of Spring Framework Guru, Speaker at Spring One, former Spring Source consultant
Welcome to the Testing Spring Boot course!
Introduction to testing software.
See a very simple JUnit 5 unit test.
Overview of common testing frameworks for Java and Spring Boot. Includes: JUnit 4, JUnit 5, TestNG, Spock, Mockito, Selenium, and GEB.
Learn why having proper test coverage via JUnit tests is needed to realize the benefits of CI/CD for your Spring Boot applications.
Section overview for learning Test Driven Development using JUnit 5.
Learn about the original author of JUnit, Kent Beck, and his passion for Test Driven Development.
In this lesson, we review the development requirements for completing the TDD section of the course using JUnit 5.
Overview of the Getting Started with JUnit 5 section of the course.
Overview of JUnit 5.
How to add the required dependencies for JUnit 5 to your Maven POM.
Simple "Hello World" example in JUnit 5.
See how to initialize properties using the JUnit @Before annotation.
Introduction to this section of the course, which is an introduction to JUnit 5.
In this lesson we review the code of a project we will use to write tests using JUnit 5.
Introduction to the section of the course on advanced features of JUnit 5.
Learn how you can tag and filter JUnit tests.
Learn how to use JUnit nested tests.
JUnit 5 brings the capability to use Java interfaces for your unit tests
You can use Java default methods with your JUnit 5 tests.
See how to repeat JUnit tests multiple times.
JUnit 5 has the ability to inject dependencies into your tests.
Student assignment covering JUnit dependency injection.
Review of student assignment covering JUnit dependency injection.
OpenCourser helps millions of learners each year. People visit us to learn workspace skills, ace their exams, and nurture their curiosity.
Our extensive catalog contains over 50,000 courses and twice as many books. Browse by search, by topic, or even by career interests. We'll match you to the right resources quickly.
Find this site helpful? Tell a friend about us.
We're supported by our community of learners. When you purchase or subscribe to courses and programs or purchase books, we may earn a commission from our partners.
Your purchases help us maintain our catalog and keep our servers humming without ads.
Thank you for supporting OpenCourser.