인프런 영문 브랜드 로고
인프런 영문 브랜드 로고
BEST

스프링부트 JUnit 테스트 - 시큐리티를 활용한 Bank 애플리케이션

스프링 부트(Spring Boot)로 은행 애플리케이션을 개발해 봅니다. 개발을 하면서 발생하는 여러 문제들을 하나씩 직접 제이유닛(JUnit)으로 테스트해 보면서 스스로 고민하고 애플리케이션을 구축할 수 있는 힘을 길러드리는 강의입니다.

초급자를 위해 준비한
[소프트웨어 테스트, 백엔드] 강의입니다.

이런 걸 배울 수 있어요

  • JPA

  • Security

  • Springboot

  • JUnit 단위 테스트

  • JUnit 통합 테스트

  • JUnit 테스트를 위한 효과적인 세팅법

Spring Boot + JUnit, 처음부터 확실하게!

초보 백엔드 개발자를 위한
스프링 부트 JUnit 테스트 활용

💡 스프링부트로 Junit 테스트를 하지 않고 프로젝트를 작성하고 있다면?

💡 테스트를 작성했을 때의 장점이 무엇인지 잘 모르겠다면?

테스트 프로그램 작성 프레임워크, JUnit

단위 테스트, 통합 테스트 등 JUnit을 사용해 Spring Boot(스프링 부트)에서 테스트를 진행하는 방법에는 여러 가지가 있습니다. 하지만 막상 초보자가 JUnit으로 테스트를 시작하기에는 다소 어렵게 느껴지기 마련입니다. 개인/기업 블로그나 공식 문서 등에 개념이 적혀있기는 하지만 막상 잘 정리된 개념과 팁만을 모아보기도 쉽지 않습니다.

이 강의에서는 JUnit이 처음인 분들이 JUnit을 쉽게 접할 수 있도록 개념을 정리하고, 다양한 팁들을 정리합니다. Repository, Service, Controller, Security Filter 등에서 발생할 수 있는 문제들을 하나씩 테스트해 봅니다. 이 과정을 통해 스프링 부트 레이어들간의 관계 및 책임에 대해 명확하게 알고 넘어갈 수 있습니다.

스프링 부트 경험은 있지만, 테스트의 필요성도 방법도 잘 모르고 계신가요? 
여러분은 이 강의를 통해 테스트를 하지 않고 본코드를 작성할 때와, 테스트를 작성하고 본코드를 작성할 때의 차이를 직접 경험하게 될 것입니다. 스프링 부트로 프로젝트를 작성하고 계신다면, 고민하지 말고 꼭 수강하시길 바랍니다!


은행 애플리케이션을 개발하며 
테스팅을 생생하게 배워보세요.

스프링부트를 통해 간단한 은행(Bank) 애플리케이션을 만들어 봅니다. 이 과정에서 스프링부트와 시큐리티에 대해 더 자세히 알 수 있고, JUnit 테스트를 왜 하는지 명확하게 알 수 있게 됩니다.

강의 특징

  • ✅ Rest API 주소 설계에 대해 고민할 수 있게 됩니다.
  • ✅ 시큐리티 코드를 테스트할 수 있으며, 테스트를 통해 프로젝트 개발 시간을 단축시킬 수 있습니다.
  • ✅ JUnit 테스트를 할 때 꼭 필요한 세팅 방법 및 팁을 공유합니다.
  • ✅ 인터넷에 있는 원론적인 내용이 아닌, 왜 테스트를 해야 하는지를 체험할 수 있게 됩니다.

상세 커리큘럼

스프링부트 프로젝트/스프링부트 시큐리티 세팅

  • Bank 애플리케이션 프로젝트를 세팅하고, 테이블을 설계하고 엔티티를 생성합니다.
  • 최신화된 시큐리티 코드를 작성하고, Junit으로 테스트합니다.

스프링부트 회원가입

  • 첫 번째 기능인 회원가입을 통해 Validation, AOP를 적용하고 테스트합니다.

스프링부트 JWT 인증 및 인가

  • JWT 서버를 구현하고, 인증 테스트/인가 테스트를 진행합니다.
  • JWT 서버 코드를 리팩토링 해봅니다.

은행 애플리케이션 만들기

  • 계좌등록, 계좌목록, 계좌삭제, 계좌입금, 계좌출금, 계좌이체, 입출금내역보기 기능을 만들어봅니다.
  • 해당 기능에 대한 Repository, Service, Controller 테스트를 진행합니다.
  • 테스트는 통합테스트, 단위테스트, Mock 테스트에 대해서 배우게 됩니다.
  • 테스트에 필요한 세팅과, 문제점, 팁을 모두 공유합니다.

회원가입, 로그인, 계좌 관리 등 은행 앱에 필요한 다양한 기능을 만드는 과정에서 테스트를 진행해 봅니다.


반갑습니타, 메타코딩 최주호입니다!

스프링 프레임워크, 리액트, 플러터, DevOps 등 개발 유튜브 채널 메타코딩을 운영하는 최주호입니다.

상세 이력

  • 현 겟인데어 대표, 노마드랩 개발 팀장, BNK시스템 (은행), 경성대학교 정보전산원, OSAM 해커톤 멘토, 크러스트 유니버스 NFT Flutter 앱 개발
  • 부산IT교육센터 강의 (스프링 프레임워크), 동의대학교 평생아카데미 강의 (스프링 프레임워크), 정보진흥원 강의 (공공데이터), 대전보건대 강의 (스프링프레임워크), 광운대학교 강의 (사물인터넷 스마트홈), SBS아카데미 (자바 강의), 구름에듀 (스프링프레임워크), 지아이티강의 (스프링프레임워크, 머신러닝), 패스트캠퍼스(스프링부트) 강의 중
  • 자바 프로그래밍 입문, JSP 프로그래밍 입문, IoT 사물인터넷을 위한 라즈베리파이 저자 (앤써북), 플러터 UI입문 (앤써북), 플러터 UI실전 (앤써북) 등 저
  • 스프링부트 정석 (위키북스), AWS CI/CD 배포 기술서 (앤써북) 집필 중
  • 유튜브 메타코딩 채널 운영 (스프링프레임워크, 리액트, 플러터, Devops)
  • 이지업, OSAM, 인프런, 구름에듀 등 온라인 강의 진행
  • 부경대 컴퓨터공학 석사 졸업, 공개 소프트웨어 역량 강화 (국방부장관상)

Q&A를 확인해보세요.

Q. macOS에서 수강할 수 있나요?

네, 수강하셔도 됩니다.

Q. VSCode가 아닌 다른 IDE를 사용해도 되나요?

본인이 사용하는 IDE가 있다면 해당 툴을 사용해도 무방합니다.

Q. JUnit이 처음인데 강의를 들어도 될까요?

스프링부트 및 JPA를 학습하셨다면 바로 수강하셔도 됩니다.

https://www.inflearn.com/course/스프링부트-시큐리티

위 URL의 강의를 듣고 Junit 강의를 들으면 더욱 재밌게 수강할 수 있어요.

💾 수강 전 참고 사항

  • Windows/macOS 환경 모두 수강하실 수 있으며, IDE로는 VSCode를 사용합니다. (IntelliJ 등 다른 IDE를 사용해도 무방합니다.)
  • JDK 11, Spring Boot 2.7.7 버전을 사용합니다. 스프링부트 버전 3.0 이상을 사용할 경우에는 자바(Java) 17 버전 이상을 세팅하셔야 합니다.
  • 선수 지식으로 스프링 부트 및 JPA 사용 경험이 있어야 합니다.
  • Github을 통해 학습 자료를 제공합니다. (링크)

이런 분들께
추천드려요!

학습 대상은
누구일까요?

  • 스프링부트로 JUnit 테스트를 하고 싶은 개발자 혹은 학생

  • 최신 스프링부트 시큐리티 코드를 알고 싶은 개발자 혹은 학생

선수 지식,
필요할까요?

  • 스프링부트

  • JPA

안녕하세요
최주호입니다.

28,361

수강생

714

수강평

219

답변

4.9

강의 평점

4

강의

유튜버 메타코딩입니다.

https://www.youtube.com/channel/UCVrhnbfe78ODeQglXtT1Elw

커리큘럼

전체

69개 ∙ (15시간 9분)

강의 게시일: 
마지막 업데이트일: 

수강평

전체

23개

4.6

23개의 수강평

  • 주아아빠님의 프로필 이미지
    주아아빠

    수강평 50

    평균 평점 5.0

    5

    7% 수강 후 작성

    안녕하세요 강사님~ 인프런에 강사님의 무료 스프링 개념 강의 듣고 너무 좋아서 수강하게 됐습니다 강사님의 메타코딩 유투브랑 이지업클래스 수업도 들었습니다 참고로, 다른분들도 이지업클래스 jpa 강의 들으시면 도움될거 같아요 이지업클래스에서는 jpa 이클립스로 강의하시는데 몰랐던 부분 많이 알게되서 좋았습니다 차분하게 목소리 좋고, 원리 개념 설명 차분히 잘 설명 해주십니다 스프링 관련 좀더 깊이 있는 부분도 기대합니다 실무에서 프로젝트에서 경험하신 jpa중/고급, 동시성제어(락), 병렬처리, 배치, 엑셀파일처리, 이메일전송, 원격제어 등 .. 앞으로 좋은 강의 기대하고. 응원합니다 항상 건강하고 행복하세요^^

    • 최주호
      지식공유자

      감사합니다. 첫댓글이니 담강의 나오면 무료 쿠폰드리겠습니다. 꼭 말해주세요

  • 이진우님의 프로필 이미지
    이진우

    수강평 22

    평균 평점 5.0

    5

    100% 수강 후 작성

    어플리케이션을 만들어보면서 JUnit5 테스트를 학습하고 싶다면 이 강의를 추천합니다. 테스트 코드 작성을 하지 않는 회사 두 군데를 다니면서 다음 회사는 테스트 코드를 작성하는 회사를 들어가겠다는 목표를 정했습니다. 그런데 테스트 코드를 어떻게 작성해야 하는지 막막한 상황에서 해당 강의를 알게 되었고, 열심히 따라 한 덕분에 각 레이어 별로 테스트 하는 방법에 숙달 될 수가 있었습니다. 다른 JUnit 강의의 경우 API Method에 대한 학습 테스트 하는 경우가 많았는데, 이 강의로 실무처럼 연습할 수 있어서 좋았습니다. 감사합니다 **참고. JUnit5에 대한 기본적인 테스트 방법을 학습하시고, 해당 강의를 들으실 경우 추진력을 얻을 수 있습니다.

    • 최주호
      지식공유자

      자세한 후기 감사합니다!!

  • 이진혁님의 프로필 이미지
    이진혁

    수강평 9

    평균 평점 5.0

    5

    100% 수강 후 작성

    최근 실무에 JWT를 적용해야 할 경우가 생겼는데 덕분에 잘 적용해서 좋은 결과물이 나왔습니다. 감사합니다!!

    • 강프로그래머님의 프로필 이미지
      강프로그래머

      수강평 24

      평균 평점 4.6

      3

      100% 수강 후 작성

      강의 내용은 매우 좋습니다 [좋은 점] 1. 이것저것 쏠쏠하게 몰랐던 지식도 많음 2. 실무에서 유용한 코드가 많음 3. 내용 알차고 세세하게 설명함 4. 깃허브에 수업 자료가 잘 정리되어 있음 ----- [아쉬운 점] 1. 다른 리뷰처럼 키보드 소리가 탁탁.. 진짜 집중이 안 됨.. 2. 라이브 코딩으로 진행하셔서 그런지.. 대부분의 챕터마다 실수로 인해서 강사님 멘붕오시고 정적... 그리고 에러를 찾아 헤매는 동안에 강의 흐름이 끊김.. 그래서 본인은 되감기 해서 다시 듣고 이해해야 됨.. (다른 라이브 코딩 강의처럼 멀티 모니터 사용하셔서 미리 완성된 프로젝트를 참고하시면서 진행하시면 좋겠습니다..)

      • 최재영님의 프로필 이미지
        최재영

        수강평 12

        평균 평점 5.0

        5

        100% 수강 후 작성

        예전 국비로 서면에서 선생님 교육들었었는데 너무 잘가르쳐주어서 시큐리티 강의말고도 여러강의결제하면서 정말 많은 도움을 받았습니다

        비슷한 강의

        같은 분야의 다른 강의를 만나보세요!

        ₩39,600