Software Testing with Spring boot and Mockito Framework
ฝัง
- เผยแพร่เมื่อ 1 ม.ค. 2024
- Buy me a coffee: ko-fi.com/boualiali In this video, Alibou takes you on a journey to understand the significance of unit tests in software development. Discover the real-world scenarios where a single line of code can make or break your application. We'll unveil the secret weapon - Unit Testing - and explore how it empowers developers to build reliable, resilient software.
🚨 Why You Need a Safety Net for Your Code
Learn how unit tests act as a safety net around your code, catching potential issues before they reach production. Gain the confidence to make changes and improvements without the fear of causing chaos in your application. We'll guide you through practical examples, showcasing the real impact of robust testing practices.
🎟 Join this channel to get access to perks: / @boualiali
Recommended Courses:
🎬 Spring Boot security & JWT token: • Spring boot 3.0 - Secu...
🎬 Spring security - Roles and permissions: • Spring boot 3 & Spring...
🎬 Spring Boot - Microservices architecture: • Microservices tutorial...
🎬 DevOps - Github Actions CI/CD: • GitHub Actions CI/CD p...
🎬 Spring Security - KeyCloak integration: • Spring boot 3 Keycloak...
🎬 DevOps - Docker for Beginners: • Docker tutorial for be...
🎬 DevOps - AWS EC2 deployment: • 🚀 Deploy Spring boot a...
🎬 Angular - Full course from scratch: • Angular Tutorial For B...
🎬 Websocket - Chat application one to one: • WebSocket Tutorial wit...
🎬 Spring Security - Two Factors Authentication 2FA (TFA): • Two Factor Authenticat...
🎬 Spring Boot - Swagger UI & OpenApi Decomentation : • Spring boot 3 - OpenAp...
🎬 Spring Boot - Reactive programming & WebFlux: • Reactive Programming w...
🎬 Spring Data JPA & Hibernate: • Spring Data JPA - The ...
🎬 Apache Kafka tutorial: • Apache Kafka Tutorial ...
🎬 Spring batch tutorial: • Spring batch
CONNECT WITH ME:
👨💻. Website: aliboucoding.com
👨🏫 Facebook: / 589612651142975
📸 Instagram: / alibou_coding
🎮 GitHub: github.com/ali-bouali
🏘️ Discord: / discord
#SpringBoot #UnitTesting #Mockito #SoftwareDevelopment #Java #Coding
Perfect Upload. I was just learning about unit & integration testing & you've uploaded at the right time. Thanks a lot !
Glad it was helpful!
Can you make a video about using Redis in Spring Boot and PostgreSQL?
soon
Always providing high quality Content , THANK YOU !!
Glad you think so!
You changed my life of spring developper and i'm ready to buy on your plateforme a complete course of how to deploy spring boot project on aws (AWS Amplify, AWS S3, AWS RDS, AWS EC2). It will be a pleasure to follow such course. Thanks for everything
now, all my content is and will be for free. No one should pay to learn
You are welcome to contribute if you want to
Interessting and well understanding, big thanks
Thank you for this video. Please continue topic of testing.
sure
بارك الله فيك و يرحم والديك ، جات الوقت المناسب
baraka allahou fik
you're amazing thanks !
Thank you man, this video is really helpful
Glad you liked it!
Hi Alibou, Your content is very good, much appreciated. It would've been even great if you've covered code coverage as well.
Thanks
Very nice boulai Ali thank you☺️☺️☺️🎁🙏🏾🙏🏾 for the video happy the new year
Glad you liked it!
Thanks. Great explanation as usual
My pleasure!
Thank you very much. Really appreciate your for your effert ❤❤❤❤
my pleasure
Literally amazing tutorial, the only thing missing was testing the controller.
Do you have a complete course on testing, where we can get the initial code to learn along with you? I enrolled into your platform, the content is awesome, thanks for the effort.
can you do more videos about testing ? perhaps testing the controller layer ? i loved the lecture, you helped me a lot. 😊
Yes, soon
Great Video!!! Could you provide us with the link to the repository? How to test controller classes ? How do you test the database connection and whether data is read and saved correctly?
best as always
Thanks, it is excellent illustration
I'm glad you like it
Great content, keep going !!
Glad you liked it!
please make more videos on unit testing and mockito which used more complex code like service class depends on multiple different service class and use spring security for authorization and authentication and encryption decryption for request and response object. Your video is really helpful and thanks sir for sharing your great knowledge with us.
noted
After One month Sir ALi Bouali come Back 🥰
You are a fantastic teacher. Thanks a lot. Can you please cover integration testing of REST services ?
Yes, soon
Awesome dude ❤🙏🙏🙏
Glad you think so!
Do we have the video of development / Implementation of that Student project ?
*Table of Contents*
(By the way, a "mock" is an empty version of an object, and a "stub" is a mock with some functionality added back in.)
00:00 Testing is important, here's why
06:05 What is Spring Test?
(tl;dw it's a testing library for Java).
8:49 How the example program is organized
(tl;dw StudentMapper has a Student object with student info, and has a StudentResponseDto object (Dto stands for Data transfer object). StudentService has a StudentRepository object and a StudentMapper object.)
10:59 Making a test class for StudentMapper
14:58 Test Class exists, first (Hello World) test function
```
@Test
public void testMethod1(){
System.out.println(“My first test method”);
}
```
16:50 The SetUp method, @BeforeEach
19:01 The TearDown method, @AfterEach
20:42 @BeforeAll (BeforeClass) method
22:30 @AfterAll (AfterClass) method
23:55 First actual test, and what the StudentMapper functions do
29:57 First test is done and runs
30:06 Causing the first test to fail
32:07 Practice Exercise - implement test for toStudentResponseDto method
32:50 Practice Exercise answer
34:44 Given, When, Then, test structure
35:39 Third test: studentDto to student if null.
38:15 Fixing the source code to handle null. Adjusting test to expect exception, and getting the exception message (assertThrows(exceptionType, () -> { code });)
42:31 Explanation of StudentService and database, test isolation with mocking (Mockito)
45:01 Creating new test class for StudentService
46:30 First and second @Mock
47:33 @InjectMocks
48:22 Opening/starting the mocks (MockitoAnnotations.openMocks(this);)
49:21 First test method for StudentService, saving a student
52:48 Why the result is null/failing. Mocking functions for test isolation’s sake. when().thenReturn()
57:31 Test with mocks (and stubs) is ready and runs
59:06 Making sure the methods were only called once, using Mockito.verify()
1:02:20 Practice Exercise - test findAllStudent() method, using mocks (and stubs) as needed
1:02:53 Practice Exercise answer (including using mockito any() method)
1:06:33 Practice Exercise - test findStudentById() method
1:06:52 Practice Exercise answer (including Optional.of())
1:10:07 Bouali Ali is proud of you
1:10:13 Practice Exercise - test findStudentsByName()
1:10:45 Practice Exercise answer
This is a great video explaining the basic concept for ut. please can you provide the code source for all app not including for test part
there is no app for that. just showcase services
can you tell me which repo, you used for the testing, can you provide the link?
I dont have a repo for it
Sir codesource please is not in the description
I had the same query asked below. Want to know the spring boot version used here.
spring 3
Could you do a video about how to be in testing with jwt-security ? how to add jwts or fake jwts when testing and how to test login or auth methods, endpoints?
good idea
Waiting for it
I think that the repository level must be tested first of all. It doesn't need to test basic CRUD operations of a repository. But we have a lot of fun besides. For insance, test the fact that repository realy gives an id for a new entity. Does the audit feature (createdAt, modifiedAt) realy work? Does it throw correct exceptions? Does your SQL query correspond to your expectations? How to mock DB (embedded, docker) ...
This is the integration tests level.
I will cover it soon
saha aloulou
you're the best
hi Ali, can i get the source code link?
Can you make a video about Integration testing?
soon
where can I find the code for this video?
in the description
Can you make videos on DevOps
which part of it?
Thanks a lot. Can you please share source code?
In the description
githup ?? this video resoruce