강의

멘토링

로드맵

Inflearn brand logo image
BEST
Programming

/

Back-end

Practical Testing: Hướng dẫn kiểm thử thực tế

Thông qua khóa học này, bạn sẽ có thể viết mã kiểm thử gọn gàng và rõ ràng, đúng như cách phát triển trong thực tế. Đây là khóa học dành cho tất cả những ai tò mò muốn biết tại sao mã kiểm thử lại cần thiết và thế nào là mã kiểm thử tốt.

(4.9) 272 đánh giá

3,059 học viên

  • wbluke
테스팅
유닛테스트
junit5
스프링
mockito
BDD
tdd
jpa
Software Test
Mockito
Spring
JPA

Đánh giá từ những học viên đầu tiên

Dịch cái này sang tiếng Việt

  • Cách viết mã test vững chắc đảm bảo chất lượng code production

  • Cách viết test code trong dự án dựa trên Spring & JPA

  • Khung kiểm thử - JUnit5

  • Framework Mock - Mockito

  • 공구 tự động hóa tài liệu thông qua mã kiểm thử - Spring REST Docs

Mã kiểm tra chính xác cho bài thực hành của bạn
Tôi sẽ là bước đi đầu tiên của bạn!

Kiểm thử mã có thực sự quan trọng không? 🤔

Chắc chắn! Nếu không có mã kiểm thử, sẽ rất khó để đảm bảo mức độ chất lượng nhất định cho ứng dụng tôi xây dựng.
Sẽ mất bao nhiêu thời gian và tiền bạc nếu mọi người phải kiểm tra thủ công từng tính năng mới được thêm vào hoặc từng tính năng hiện có được sửa đổi?

Bạn có thể tạo ra những ứng dụng mạnh mẽ hơn nếu bạn có thể xác minh mã của mình thường xuyên thông qua mã kiểm tra tự động .
Sự tự tin mà tôi có được khi tái cấu trúc là một phần thưởng, vì các bài kiểm tra đảm bảo rằng mã tôi viết hoạt động như mong đợi!

Tôi biết chúng ta cần mã kiểm tra, nhưng
Tôi không biết phải viết thế nào cả. 😵‍💫

Ngay cả khi bạn biết tầm quan trọng của mã kiểm thử, mã kiểm thử khó đọc hoặc viết kém cũng dễ trở thành một mối lo ngại khác. Nếu khó biết bạn đang thử nghiệm cái gì hoặc nếu nó phức tạp và khó bảo trì, bạn sẽ thấy mình không đụng đến mã thử nghiệm theo thời gian.

Trong bài giảng này, chúng tôi sẽ hướng dẫn bạn cách viết mã kiểm tra rõ ràng, sạch sẽ và có thể phát triển theo những thay đổi trong mã sản xuất.


Trong bài giảng này 📖

Khung thử nghiệm

Chúng tôi sẽ giới thiệu JUnit5, một nền tảng kiểm thử dựa trên Java và Mockito, một nền tảng kiểm thử giả lập.
Chúng tôi sẽ thảo luận chi tiết, với các ví dụ cụ thể, về những gì cần xác minh và trong những tình huống nào thì nên sử dụng đối tượng giả.

Spring và JPA, kiểm thử dựa trên kiến ​​trúc phân lớp

Chúng tôi sẽ xây dựng một máy chủ API dựa trên kiến ​​trúc nhiều lớp và thảo luận về cách viết mã thử nghiệm cho từng lớp.
Chúng tôi sẽ đề cập đến công nghệ này cũng như những nguyên tắc cơ bản khi viết các bài kiểm tra sạch bằng bất kỳ ngôn ngữ nào hoặc sử dụng bất kỳ công nghệ nào.

Các chủ đề được đề cập trong các bài đánh giá mã thực tế

Tôi đã đưa vào bài giảng những câu hỏi và câu trả lời liên quan khác nhau mà tôi nhận được khi làm người đánh giá cho Khóa học Elegant Tech và Trại Elegant Tech Pro.
Thông qua các bài giảng, bạn có thể tự nhiên tiếp xúc với các chủ đề được đề cập và xem xét trong thực tế.

Tóm tắt từ khóa cho tăng trưởng một bước

Thay vì chỉ đề cập đến các chủ đề liên quan đến thử nghiệm, nó còn cung cấp nền tảng để phát triển hơn nữa với tư cách là một nhà phát triển phần mềm.
Vào cuối mỗi phần, chúng tôi cung cấp các từ khóa cốt lõi liên quan được trình bày trong bài giảng và các từ khóa để học chuyên sâu hơn, giúp bạn mở rộng tầm hiểu biết về phát triển.

Hướng dẫn chi tiết, biểu đồ và các dự án mẫu mà bạn có thể làm theo.

Chúng tôi trình bày các điểm chính và một số hình ảnh minh họa cho từng chủ đề để giúp bạn hiểu rõ hơn. Sau khi giải thích các khái niệm, chúng tôi sẽ tiến hành mã hóa thông qua một dự án ví dụ.
Nó được cấu trúc sao cho bạn có thể hiểu sâu hơn bằng cách làm theo mã từ đầu đến cuối.


Đối với những người này
Tôi khuyên bạn nên dùng🙌🏻


Chương trình giảng dạy
Hãy xem thử nhé ✨


Hỏi & Đáp 💬

H. Tôi chưa biết nhiều về Spring và JPA. Tôi vẫn có thể tham gia khóa học chứ?

Tôi sẽ cung cấp cho bạn bản tóm tắt ngắn gọn về những yêu cầu, nhưng bạn cần có hiểu biết cơ bản về Spring và JPA.
Tuy nhiên, nó không bao gồm nội dung quá phức tạp, vì vậy nếu bạn có kinh nghiệm tạo API bằng công nghệ này một hoặc hai lần thì nó sẽ đủ.
Tôi nghĩ sẽ là một ý tưởng hay nếu chúng ta cùng nhau học khi gặp phải điều gì đó mà bạn không biết :)

H. Tôi tò mò về môi trường thực tế!

Để chỉ cho bạn cách phát triển trong thực tế một cách sát nhất có thể, chúng tôi sử dụng giấy phép IntelliJ Ultimate theo mặc định.
Tôi đang sử dụng macOS, nhưng tôi đã áp dụng plugin phím tắt IntelliJ để những người sử dụng hệ điều hành khác tham khảo.

Spring Boot sử dụng phiên bản 2.7.7, nhưng bạn có thể tham gia khóa học bằng phiên bản cao hơn mà không gặp vấn đề gì. Để biết thêm thông tin, vui lòng tham khảo bài giảng mở [Giới thiệu về Dự án mẫu & Hướng dẫn môi trường phát triển]. :)

H. Tôi có thể chọn bất kỳ phần nào tôi muốn trước, bất kể thứ tự ra sao không?

Vì bài giảng này trình bày mã sản xuất và mã thử nghiệm phát triển dần dần trong một luồng lớn nên chúng tôi khuyên bạn nên học tuần tự từ các phần trước. :)

Khuyến nghị cho
những người này

Khóa học này dành cho ai?

  • Những người thắc mắc vì sao cần mã kiểm thử

  • Những ai đã học Spring, JPA nhưng không biết cách viết code test

  • Tất cả những ai muốn viết code test sạch sẽ và rõ ràng

Cần biết trước khi bắt đầu?

  • Ai đã từng phát triển API cơ bản với Spring và JPA dù chỉ một lần!

Xin chào
Đây là

5,314

Học viên

382

Đánh giá

367

Trả lời

4.9

Xếp hạng

5

Các khóa học

안녕하세요 ☺️
몰입을 즐기는 개발자, 박우빈입니다.

  • (현) 캐치테이블(와드) 소프트웨어 엔지니어

  • (전) 우아한형제들 소프트웨어 엔지니어

  • 우아한테크코스 3기, 4기 리뷰어 / 우아한테크캠프pro 1기 리뷰어 / 그 외 다양한 리뷰어 활동

Chương trình giảng dạy

Tất cả

48 bài giảng ∙ (12giờ 27phút)

Tài liệu khóa học:

Tài liệu bài giảng
Ngày đăng: 
Cập nhật lần cuối: 

Đánh giá

Tất cả

272 đánh giá

4.9

272 đánh giá

  • khd16927573님의 프로필 이미지
    khd16927573

    Đánh giá 11

    Đánh giá trung bình 5.0

    5

    100% đã tham gia

    Hello, instructor! I am a new backend developer in my 4th month. I listened to it because I had to use RestDocs at work. As a result, I felt the need for testing, and I was able to learn how to write test code. However, the part that I am most satisfied with is that you taught me how to use it in the field. Of course, I was also very grateful that you answered my questions accordingly. I was especially grateful that you taught me how to distinguish DB endpoints through @Transactional(readOnly = true), and how to distinguish RequestDto and ResponseDto between Service and Controller, and in response to my question, you explained that the performance of the application is more important than the readability of the code, and that there are parts where the readability of the code decreases, so I refactored my actual code! Oh, and I'm using it well because you also told me about guava. ㅎㅎ I really came to learn RestDocs, but it was a lecture where I gained a lot more as a bonus. Thank you so much for the lecture again. In addition, I think it would be good if you could share your field experience, and make a project lecture for the field. Many of Inflearn's lectures are focused on students or job seekers, and of course, there would be more demand for those parts, but I don't think there are any project-based lectures that really target the field and have high-density concerns. If there were an advanced lecture that goes beyond simple learning, and if the instructor filmed it, it would be really, really great. This is my personal wish, so thank you for reading^^ Even if it's not a project lecture, I will definitely take the instructor's other lectures. I personally think that developers are people who constantly think, and in that respect, I felt that the instructor's thoughts were in line with mine (as an answer to my question), and it was an honor. When I start writing test code again in earnest I will review the lecture and ask questions again. Thank you.

    • wbluke
      Giảng viên

      khd1692~! Wow, such a sincere course review 🥲 I was wondering whether to include RestDocs in the curriculum, but it was a good decision! I'm thinking about the next lecture in many ways. ㅎㅎㅎ Thank you so much for the sincere course review, and I'll be rooting for your future learning journey~! ☺️

  • spring0073님의 프로필 이미지
    spring0073

    Đánh giá 4

    Đánh giá trung bình 5.0

    5

    96% đã tham gia

    Hello, I am a developer with 6 years of experience. I only know the general idea of test code and actually haven't used it much in practice. My conclusion is that there are many experienced developers who can't write test code elegantly. In fact, I thought it was "annoying" before watching this lecture. I am one of those developers. However, I changed my mind after watching this lecture. I am a senior developer and a developer who was afraid of test code, so I learned a lot from this opportunity. In addition, JPA is taught in a way that is close to practice, and if you don't have the basics, you may wonder "Why?", but this is exactly the lecture I wanted. Thank you.

    • wbluke
      Giảng viên

      Thank you, Choi Kang-developer, for your detailed course review~! "Your thoughts on test code have changed" is the best compliment I can give. I'm so glad it was helpful. I, who taught the course, have often felt that test code is annoying, so let's keep reminding ourselves why we need to keep thinking about and writing quality test code, and let's fight together in the field~! Thank you :)

  • langoustine님의 프로필 이미지
    langoustine

    Đánh giá 2

    Đánh giá trung bình 5.0

    5

    100% đã tham gia

    First of all, I would like to thank you. During the 12 hours of lectures, I was able to have a productive time thinking about the intention and purpose of writing tests. In addition, I was able to get a grasp on the vague concepts of tests, and I was able to be motivated to develop an uncompromising development spirit. In the future, I will not rest on my laurels, but will apply the test code knowledge I have learned here and there, and grow into a developer who can write tests regardless of the tools!

    • wbluke
      Giảng viên

      lango! I'm greedy, so I talked about this and that, so the lecture became quite long, but I'm glad that my sincerity was conveyed well. ㅎㅎㅎ I hope we can continue to grow together as solid developers with test codes in the future. Thank you for leaving a review! ☺️

  • mokdogdev님의 프로필 이미지
    mokdogdev

    Đánh giá 6

    Đánh giá trung bình 4.8

    5

    100% đã tham gia

    I have been writing tests without any knowledge until now.. This lecture helped me build the basics to create more robust code. I recommend this lecture.

    • wbluke
      Giảng viên

      Mokdong Developer! I'm glad I can join you in building your basics. Sometimes writing tests is hard, but let's work hard together. ㅎㅎㅎ Thank you for leaving a review! ☺️

  • shseoul148113님의 프로필 이미지
    shseoul148113

    Đánh giá 3

    Đánh giá trung bình 5.0

    5

    100% đã tham gia

    This lecture really scratched my itch when it came to testing. I was studying alone and had no place to get feedback on test codes, so I was looking through several project repos from IT clubs or educational programs and thinking about how to write test codes. This lecture really helped me. Now that I know the direction and method to some extent, I just need to learn it myself and make it my own. Thank you for the great lecture. I could feel that you put a lot of effort into preparing the lectures. Thank you.

    • wbluke
      Giảng viên

      Jason! Thank you for your refreshing class review~! I am so grateful that it was helpful to me. I will support your learning journey. :)

1.614.287 ₫

Khóa học khác của wbluke

Hãy khám phá các khóa học khác của giảng viên!

Khóa học tương tự

Khám phá các khóa học khác trong cùng lĩnh vực!