Spring Boot Testing with JUnit 5, Mockito & Testcontainers

所在平台: Udemy

课程主页: https://www.udemy.com/course/testing-spring-boot-application-with-junit-and-mockito/

课程评论:没有评论

第一个写评论        关注课程

课程简介

课程名称:使用JUnit 5、Mockito和Testcontainers进行Spring Boot测试 概述:本课程将教授如何为Spring Boot应用程序以及Spring WebFlux应用程序编写BDD风格的单元测试和集成测试,使用的框架包括JUnit 5、Mockito、AssertJ、Hamcrest、JsonPath和Testcontainers。最近更新包括增加了关于JUnit 5基础知识的讲座。本课程已更新至支持Spring Boot 3,建议视频中与我一起编写代码,以增强学习体验。源码和PDF文件(课堂笔记)可供下载。 Spring Boot概述:Spring Boot是一个具备意见的框架,可以帮助开发人员快速轻松地构建基于Spring的应用程序。其主要目标是快速创建Spring应用,而无需开发人员一次次编写相同的样板配置。Spring Boot是开发REST web服务和微服务的热门框架。 Spring WebFlux概述:Spring 5引入了Spring WebFlux,提供了对Web应用程序的反应式编程支持,内部使用项目React和其发布者实现Flux和Mono。该框架支持两种编程模型:基于注解的反应式组件以及功能性路由和处理。课程将专注于使用基于注解的反应式组件构建反应式REST API。 学习内容: - 学习JUnit 5框架基础。 - 从零开始使用Spring Boot Starter Test依赖项编写行业标准的BDD风格单元测试和集成测试。 - 学会使用给定/当/然后的BDD格式编写单元测试。 - 针对Spring Boot应用程序的存储库层、服务层和控制器层进行单元测试。 - 进行Spring Boot应用程序的集成测试。 - 使用Testcontainers进行集成测试。 - 学习使用最重要的单元测试注解:@SpringBootTest、@WebMvcTest、@DataJpaTest和@MockBean。 - 使用Spring Boot Starter Test中的所有框架:JUnit、Spring Test、Spring Boot Test、AssertJ、Hamcrest、Mockito、JSONassert和JsonPath。 - 使用Mockito创建的Mock和Stub编写单元测试。 - 使用MySQL数据库进行集成测试。 - 独立编写RESTful web服务的集成测试,涵盖控制器、服务和存储库层。 - 使用Spring WebFlux构建反应式CRUD REST API。 - 学习对反应式CRUD REST API进行单元和集成测试。 所用工具和技术: - 技术和库:Java 11+、Spring Boot、Spring MVC、Spring Data JPA(Hibernate)、JUnit 5框架、Mockito 4(最新)、Hamcrest框架、AssertJ库、JsonPath库、Spring WebFlux、MongoDB。 - 开发环境:IntelliJ IDE。 - 数据库:H2内存数据库(用于存储库层测试)、MySQL数据库(用于集成测试)、MongoDB数据库(用于集成测试)。 学员评价: - 学员普遍认为课程结构良好,涵盖了测试的所有层次,讲解清晰易懂,内容丰富,实用性强。 - 教师Ramesh的讲解受到高度赞扬,多名学员希望能够看到他相关的其他课程,如微服务和TDD方法。 总体而言,本课程适合希望深入学习Spring Boot测试的开发人员,特别是那些对最新技术保持关注的学员。

课程评论(0条)

课程详情

In this course, you will learn how to write Unit tests and Integration tests in BDD style for Spring Boot applications as well as Spring WebFlux applications using JUnit 5, Mockito, AssertJ, Hamcrest, JsonPath, and Testcontainers frameworks.Recent update: I have added lectures on JUnit 5 fundamentals.Important note: This course is updated to use Spring Boot 3. Type the code along with me in the videos. If you follow along with me, then this will enhance your learning experience.The source code and PDF files (class notes) are available for download.Spring Boot OverviewSpring Boot is an opinionated framework that helps developers build Spring-based applications quickly and easily.The main goal of Spring Boot is to quickly create Spring-based applications without requiring developers to write the same boilerplate configuration repeatedly.Spring Boot is a popular framework for developing REST web services and microservices.Spring WebFlux OverviewSpring 5 includes Spring WebFlux, which provides reactive programming support for web applications.Spring WebFlux internally uses Project Reactor and its publisher implementations, Flux and Mono.The new framework supports two programming models:Annotation-based reactive componentsFunctional routing and handlingThis course will focus on building reactive REST APIs using annotation-based reactive components.What you'll learn?Learn JUnit 5 framework fundamentals.Learn to write industry-standard Unit and Integration tests in BDD (Behaviour Driven Development) style using Spring Boot Starter Test dependency from scratch.Learn how to use BDD (Behaviour Driven Development) format that is given/when/then to write Unit tests.Learn to Unit test the Spring boot application Repository layerLearn to Unit test the Spring boot application Service layerLearn to Unit test the Spring boot application Controller layerLearn how to do Integration testing for the Spring boot application.Learn how to do Integration testing using Testcontainers // very importantYou will learn to use the most important Unit Testing ANNOTATIONS - @SpringBootTest, @WebMvcTest, @DataJpaTest, and @MockBeanUse ALL the FRAMEWORKS in Spring Boot Starter Test - JUnit, Spring Test, Spring Boot Test, AssertJ, Hamcrest, Mockito, JSONassert, and JsonPath.You will learn to write Unit tests using Mocks and Stubs created with Mockito.Learn how to use Mockito annotations to create mock objects.Learn to Write Integration Tests using a MySQL database.You will learn to Write INDEPENDENT Integration tests for RESTFUL web services by talking with MULTIPLE LAYERS - controller, service, and repository layers.Learn Building Reactive CRUD REST APIs using Spring WebFluxLearn Unit Testing Reactive CRUD REST APIsLearn Integration Testing Reactive CRUD REST APIsTools and Technologies used in this course:Technologies and Libraries:Java 11+Spring BootSpring MVCSpring Data JPA ( Hibernate)JUnit 5 FrameworkMockito 4 (Latest)Hamcrest frameworkAssertJ LibraryJsonPath LibrarySpring WebFluxMongoDBIDE:IntelliJ IDEADatabase:H2 In-memory database ( for repository layer testing)MySQL database ( for Integration testing)MongoDB database (for Integration testing)Excellent reviews from Students on this course:"Ramesh is a great teacher; he provides very clear explanations of complex concepts.""Ramesh explains things very well! His instructions are easy to follow and understand. The course is very beneficial."- Well structured course covering all layers of testing- Implement each method with the "right to the point" explanation- Nice introduction to TestContainers- Easy to code along- Fast answers from the instructorLooking for more deep dives courses such as Maven, Gradle, DevOps tools used in production.""Awesome course.All the basics needed to test a spring application are discussed, and more.Exactly what i needed and coudn't find anywhere.Ramesh is a great instructor.Thank you sir!""A very good course explained with excellent examples.Lot to learn from this course, covered every layer of a typical Spring Boot application.""I really appreciate the trainer Ramesh to providing is this amazing course,the content of this course and explanation is great.""Wonderful Sir, Loved the way u explain things. And I am very lucky that I found this course at right time.""I am personally very impressed with this course, if you dont have any prior experience of unit testing I am pretty sure that after taking this course you will feel more confident and I would be happy if the lecturer could also release some training tutorials about Microservices and TDD approach. thanks and wish you all the successes.""Even though as a experience guy, this course was very useful..""The course is great and covers all I need to create my tests.I truly recommend it.""Great course. This is the second course I am taking from Ramesh. Interesting so far.""Awesome course and highly recommend it.""This course is a good match for me. Especially so because it's new and up to date.""great teacher and great course""Yes this is a good match for me and I am glad I enrolled for this. I personally prefer teaching of ramesh.fadatare. I started to watch his videos from YouTube and also gone through his comments to few problems in stack overflow. I thought it would be good if I can go through all his videos in one go.""this is what they ask you to do on a real job.please do more courses ramesh.. amazing as always"

课程标签

0人关注该课程

主题相关的课程