Udemy
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
Development
Web Development Data Science Mobile Development Programming Languages Game Development Database Design & Development Software Testing Software Engineering Development Tools No-Code Development
Business
Entrepreneurship Communications Management Sales Business Strategy Operations Project Management Business Law Business Analytics & Intelligence Human Resources Industry E-Commerce Media Real Estate Other Business
Finance & Accounting
Accounting & Bookkeeping Compliance Cryptocurrency & Blockchain Economics Finance Finance Cert & Exam Prep Financial Modeling & Analysis Investing & Trading Money Management Tools Taxes Other Finance & Accounting
IT & Software
IT Certification Network & Security Hardware Operating Systems Other IT & Software
Office Productivity
Microsoft Apple Google SAP Oracle Other Office Productivity
Personal Development
Personal Transformation Personal Productivity Leadership Career Development Parenting & Relationships Happiness Esoteric Practices Religion & Spirituality Personal Brand Building Creativity Influence Self Esteem & Confidence Stress Management Memory & Study Skills Motivation Other Personal Development
Design
Web Design Graphic Design & Illustration Design Tools User Experience Design Game Design Design Thinking 3D & Animation Fashion Design Architectural Design Interior Design Other Design
Marketing
Digital Marketing Search Engine Optimization Social Media Marketing Branding Marketing Fundamentals Marketing Analytics & Automation Public Relations Advertising Video & Mobile Marketing Content Marketing Growth Hacking Affiliate Marketing Product Marketing Other Marketing
Lifestyle
Arts & Crafts Beauty & Makeup Esoteric Practices Food & Beverage Gaming Home Improvement Pet Care & Training Travel Other Lifestyle
Photography & Video
Digital Photography Photography Portrait Photography Photography Tools Commercial Photography Video Design Other Photography & Video
Health & Fitness
Fitness General Health Sports Nutrition Yoga Mental Health Dieting Self Defense Safety & First Aid Dance Meditation Other Health & Fitness
Music
Instruments Music Production Music Fundamentals Vocal Music Techniques Music Software Other Music
Teaching & Academics
Engineering Humanities Math Science Online Education Social Science Language Teacher Training Test Prep Other Teaching & Academics
AWS Certification Microsoft Certification AWS Certified Solutions Architect - Associate AWS Certified Cloud Practitioner CompTIA A+ Cisco CCNA Amazon AWS CompTIA Security+ AWS Certified Developer - Associate
Graphic Design Photoshop Adobe Illustrator Drawing Digital Painting InDesign Character Design Canva Figure Drawing
Life Coach Training Neuro-Linguistic Programming Personal Development Mindfulness Meditation Personal Transformation Life Purpose Emotional Intelligence Neuroscience
Web Development JavaScript React CSS Angular PHP WordPress Node.Js Python
Google Flutter Android Development iOS Development Swift React Native Dart Programming Language Mobile Development Kotlin SwiftUI
Digital Marketing Google Ads (Adwords) Social Media Marketing Google Ads (AdWords) Certification Marketing Strategy Internet Marketing YouTube Marketing Email Marketing Google Analytics
SQL Microsoft Power BI Tableau Business Analysis Business Intelligence MySQL Data Modeling Data Analysis Big Data
Business Fundamentals Entrepreneurship Fundamentals Business Strategy Online Business Business Plan Startup Blogging Freelancing Home Business
Unity Game Development Fundamentals Unreal Engine C# 3D Game Development C++ 2D Game Development Unreal Engine Blueprints Blender
30-Day Money-Back Guarantee
Development Software Testing JUnit

Testing Spring Boot: Beginner to Guru

Become an Expert Testing Java and Spring Boot Applications using JUnit 5, Mockito, Spring Boot, and More!
Bestseller
Rating: 4.5 out of 54.5 (1,500 ratings)
12,865 students
Created by John Thompson
Last updated 11/2020
English
English, French [Auto], 
30-Day Money-Back Guarantee

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
Curated for the Udemy for Business collection

Course content

19 sections • 212 lectures • 16h 45m total length

  • Preview01:38
  • Preview02: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

  • Preview01:39
  • Introduction to Testing Software
    Preview14:28
  • JUnit Test Example
    04:29
  • Common Testing Frameworks for Java
    09:24
  • Beyond Testing with CI and CD
    11:00
  • Conclusion
    01:39

  • Preview02:44
  • TDD By Example Kent Beck
    Preview07:47
  • Development Requirements and Base Project
    Preview04:21
  • Multi-Currency Money
    Preview11:30
  • 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

  • Introduction to Getting Started with JUnit 5
    01:03
  • Preview08:48
  • JUnit Maven Project Setup
    06:43
  • JUnit Hello World Test
    Preview05:15
  • 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

  • Introduction to Testing Java with JUnit 5
    00:52
  • 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

  • Introduction to Advanced JUnit Testing
    01:05
  • Tagging and Filtering JUnit Tests
    04:05
  • JUnit Nested Tests
    07:19
  • JUnit Test Interfaces
    03:18
  • Using JUnit Default Test Methods
    02:56
  • Repeating Tests with JUnit 5
    03:30
  • JUnit Test Dependency Injection
    04:13
  • Assignment - JUnit Dependency Injection
    01:29
  • 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

  • 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

  • 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

  • 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

  • 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.

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! 

Who this course is for:

  • Spring Framework Developers
  • Java Developers who wish to create quality software
  • Beginner Java developers seeking marketable skills

Featured review

Hans van der zwet
Hans van der zwet
40 courses
23 reviews
Rating: 5.0 out of 5a year ago
As I figured, lots of content that is very helpful (and partially a refresher on earlier Junit Versions) ... Haven't regretted doing this course for a single moment. John is doing an excellent job on explaining everything, and illustrating things with elaborate examples. *thumbs up*

Instructor

John Thompson
Spring Framework Guru - Best Selling Instructor
John Thompson
  • 4.4 Instructor Rating
  • 32,654 Reviews
  • 185,775 Students
  • 17 Courses

Hi. I'm John.

I've been in the IT industry for over 20 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.

  • Udemy for Business
  • Teach on Udemy
  • Get the app
  • About us
  • Contact us
  • Careers
  • Blog
  • Help and Support
  • Affiliate
  • Impressum Kontakt
  • Terms
  • Privacy policy
  • Cookie settings
  • Sitemap
  • Featured courses
Udemy
© 2021 Udemy, Inc.