강의

멘토링

로드맵

Inflearn brand logo image
BEST
Programming

/

Back-end

Practical Testing: 実用的なテストガイド

この講義を通して、実務で開発するのと同じように、クリーンで分かりやすいテストコードが書けるようになります。テストコードがなぜ必要なのか、良いテストコードとは何か、これらが気になるすべての方のための講義です。

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

学習した受講者のレビュー

こんなことが学べます

  • プロダクションコードの品質を保証する堅牢なテストコード作成法

  • Spring & JPA ベースのプロジェクトにおけるテストコードの書き方

  • テストフレームワーク - JUnit5

  • モックフレームワーク - Mockito

  • テストコードを用いたドキュメント自動化ツール - Spring REST Docs

実務に合った正しいテストコード
その第一歩になりますよ!

テストコードは本当にそれほど重要ですか? 🤔

それでは!テストコードがなければ、私が作成したアプリケーションの品質を一定レベル以上に保証することは困難です。
新しい機能を追加したり、既存の機能を変更したりするたびに、毎回人が自分でテストを行う場合、どのくらいの時間と費用がかかりますか?

自動化されたテストコードを使用すると、必要に応じて自分で作成したコードを検証できれば、より堅牢なアプリケーションを作成できます。
私が書いたコードが正常に動作することをテストコードが保証してくれるので、リファクタリング時に得られる自信はおまけです!

テストコード、必要だと思います。
どのように書くべきかを見てください。 😵‍💫

テストコードの重要性を知っていても、読みにくいまたは間違って書かれたテストコードは、とにかく別の悩みになる可能性があります。何をテストしているのか分かりにくい、または複雑でメンテナンスが難しい形なら、時間が経つにつれてテストコードに手が届かなくなるでしょう。

この講義では、プロダクションコードの変化に合わせて一緒に発展していく、きれいで明瞭なテストコードの書き方をお知らせします。


この講義では📖

テストフレームワーク

Java陣営のテストフレームワークであるJUnit5とMockテストフレームワークであるMockitoについて説明します。
どのようなことを検証する必要があるのか​​、偽のオブジェクトであるMockはどのような状況で使用すればよいかをケースごとに詳細な例を挙げて話します。

SpringとJPA、レイヤードアーキテクチャベースのテスト

レイヤードアーキテクチャベースのAPIサーバーを構築しながら、レイヤーごとにテストコードをどのように書くのが良いかを話します。
技術自体についても紹介しますが、どの言語、どの技術を使用してもテストをきれいに書くことができる基本を扱います。

実務コードレビューで扱う内容

エレガントなテックコース、エレガントなテックキャンプproレビューアをしながら、受け取った様々な質問と関連回答を講義に溶かしました。
講義を通じて、自然に実際の実務で取り上げ、悩む内容に触れることができます。

ワンステップ成長のためのキーワードの整理

単にテストに関連した内容だけを扱って進むのではなく、バックエンド開発者としてもう少し成長できる足場を設けました。
一節が終わるたびに、講義中に取り上げられる関連キーワード、深化学習のためのキーワードを提示し、開発知識に対する地平を広げることができます。

詳細な説明や帳票、直接従うことができるプロジェクト例

テーマ別の重要なポイントと理解を助けるためのいくつかの図を提示し、概念の説明の後に、例示的なプロジェクトを通じてコーディングを行います。
最初から最後までコードを直接書いて、理解度を高めるように構成しました。


こんな方へ
おすすめです🙌🏻


カリキュラム
確認してください✨


Q&A 💬

Q. スプリングとJPAをまだ知らないのに受講できますか?

必要な内容は簡単に説明しますが、SpringとJPAの基本的な理解は必要です。
だからとても複雑な内容を扱っているわけではなく、その技術でAPIを1、2回作ってみたくらいで十分です。
知らない内容が出た時のように学習していく方法も良いようですね:)

Q. 実習環境が気になります!

実務で開発したものとできるだけ同じことを示すために、基本的にIntelliJ Ultimateライセンスを使用します。
macOSを使用していますが、他のオペレーティングシステムをお使いの方が参考になるようにIntelliJショートカットプラグインを適用しました。

Spring Bootは2.7.7バージョンを使用しますが、それ以上のバージョンで受講しても大きく無理はありません。詳しくは、公開された講義人「サンプルプロジェクト紹介&開発環境案内」の授業を参照してください。 :)

Q. 順番に関係なく、希望のセクションを先に受講してもいいですか?

この講義では、一つの大きな流れの中で徐々に発展していくプロダクションコードとテストコードをお見せしていますので、前のセクションから順次学習することをおすすめします。 :)

こんな方に
おすすめです

学習対象は
誰でしょう?

  • テストコードがなぜ必要か知りたい方々

  • スプリング、JPAは学習したが、テストコードをどう書けばいいか分からない方々

  • 簡潔で明確なテストコードを書きたいすべての方々へ

前提知識、
必要でしょうか?

  • SpringとJPAベースで基本的なAPI開発を一度でもしたことがある方々!

こんにちは
です。

5,313

受講生

382

受講レビュー

367

回答

4.9

講座評価

5

講座

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

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

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

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

カリキュラム

全体

48件 ∙ (12時間 27分)

講座資料(こうぎしりょう):

授業資料
講座掲載日: 
最終更新日: 

受講レビュー

全体

272件

4.9

272件の受講レビュー

  • 요니님의 프로필 이미지
    요니

    受講レビュー 11

    平均評価 5.0

    5

    100% 受講後に作成

    안녕하세요 강사님! 4개월 차 신입 백엔드 개발자 입니다 RestDocs를 회사에서 사용해야 해서 이를 위해 듣게 되었는데, 결과적으로 테스트가 왜 필요한지 그 필요성을 느꼈고 테스트 코드를 어떻게 짜야 하는지 까지 같이 배울 수 있었습니다. 그런데 제가 가장 만족하는 부분은 현업에서 사용하시는 방식을 함께 알려주시는게 너무 감사했습니다. 물론 그에 따른 질문에 대한 답변도 함께 달아주셔서 너무 감사했구요. 저는 특히 @Transactional(readOnly = true) 를 통해 DB 엔드포인트를 구분할 수 있는점, Service와 Controller간의 RequestDto, ResponseDto를 구분할 수 있는 점 등을 알려주셔서 너무 감사했고, 제 질문에 대한 답변으로 코드의 가독성 보단 애플리케이션의 성능이 더 중요하고, 이를 위해 코드의 가독성이 떨어지게 되는 부분은 어쩔 수 없다고 설명해주신걸 듣고 제 실무 코드를 리팩토링 하기도 했습니다! 아 그리고 guava도 알려주셔서 잘 쓰고 있습니다 ㅎㅎ 정말 RestDocs 배우러 왔다가 덤으로 더 많은걸 얻어가는 강의였습니다. 다시한번 강의 너무 감사드립니다. 추가적으로 강사님의 현업 경험을 공유해 주셔서, 정말 현업을 위한 프로젝트 강의를 만들어 주시면 어떨까 싶습니다. 인프런의 많은 강의들이 학생 또는 취준생을 초점으로 맞춰져 있고, 물론 그런 부분들이 수요가 더 많겠지만, 정말 현업을 대상으로 하여 밀도 높은 고민을 하는 프로젝트성 강의는 없다고 생각합니다. 단순한 학습을 넘어서, 현업의 경험들이 녹아들어간 고급 강의가 나온다면, 또 그걸 강사님이 찍어주신다면 진짜 너무 너무 좋을 것 같습니다. 제 개인적인 바램인데 읽어주셔서 감사합니다^^ 꼭 프로젝트 강의가 아니더라도, 강사님의 다른 강의가 나온다면 무조건 수강할 예정입니다. 개인적으로 개발자는 끊임없이 고민하는 사람들이라고 생각하는데요, 그런 측면에서 강사님과의 생각이 일치한다는 느낌을 받아서 좋았고 (질문에 대한 답변으로), 영광이었습니다. 테스트 코드를 다시 본격적으로 작성할 때 강의를 복습하면서 또 질문 올리겠습니다. 감사합니다.

    • 박우빈
      知識共有者

      khd1692 님~! 아니 이렇게 정성스러운 수강평이라니 🥲 RestDocs를 커리큘럼에 넣을까말까 고민했는데 넣길 잘했네요! 다음 강의에 대한 것들은 다방면으로 고민하고 있습니다. ㅎㅎㅎ 진심이 느껴지는 수강평 정말 감사드리고, 앞으로의 학습 여정도 응원하겠습니다~! ☺️

  • 오개발님의 프로필 이미지
    오개발

    受講レビュー 4

    平均評価 5.0

    5

    96% 受講後に作成

    안녕하세요 6년 차 현업 개발자입니다. 테스트 코드를 대략적으로만 알고 사실 실무에서 활용을 많이 안 했습니다. 제 결론은 경력 있는 개발자들도 테스트 코드를 우아하게 못 짜시는 분도 많습니다. 사실 이 강의 보기 전까지 “귀찮다”라고 생각했습니다 제가 그 개발자 중에 한 명입니다. 하지만 이 강의를 보고 생각이 바꿨습니다. 시니어 개발자이고, 테스트 코드에 대한 두려움이 많던 개발자라 이번 기회에 아주 잘 배웠습니다. 더불어 JPA도 실무에 근접하게 알려주시고 아마 기초가 없다면 “왜?” 저렇게 했을까라고 생각하겠지만 제가 딱 원하는 강의입니다. 감사합니다.

    • 박우빈
      知識共有者

      최강개발자님, 상세한 수강평 감사합니다~! "테스트 코드에 대한 생각이 바뀌었다"니 저로서는 최고의 칭찬이네요. 도움이 되셨다니 정말 기쁩니다. 강의한 저도 테스트 코드가 귀찮다는 마음이 올라올 때가 한두번이 아닌데, 왜 양질의 테스트 코드를 계속 고민하고 작성해야 하는지 상기하면서 현업에서도 같이 화이팅하시죠~! 감사합니다 :)

  • lango님의 프로필 이미지
    lango

    受講レビュー 2

    平均評価 5.0

    5

    100% 受講後に作成

    먼저 감사의 말씀을 전합니다. 강의를 듣는 12시간 동안 테스트를 작성하는 의도와 목적을 생각하는 생산적인 시간을 가질 수 있었습니다. 또한, 테스트에 대한 막연했던 개념들에 대해서 갈피를 잡을 수 있었고, 타협하지 않는 개발 정신을 들이는 데 동기부여 받을 수 있었습니다. 앞으로도 안주하지 않고 배웠던 테스트 코드 지식을 이리저리 응용해보며, 도구에 구애받지 않고 테스트를 작성할 수 있는 개발자로 성장하겠습니다!

    • 박우빈
      知識共有者

      lango님! 제 욕심이 많아 이런저런 이야기 하다보니 강의가 꽤 길어졌는데, 제 진심이 잘 전달된 것 같아 기쁘네요. ㅎㅎㅎ 앞으로도 테스트 코드와 함께 든든한 개발자로 같이 성장해갔으면 좋겠습니다. 수강평 남겨주셔서 감사드려요! ☺️

  • 목동 개발자님의 프로필 이미지
    목동 개발자

    受講レビュー 6

    平均評価 4.8

    5

    100% 受講後に作成

    지금까지 무지성으로 테스트를 작성해왔었는데.. 이 강의를 들으며 더 단단한 코드를 만들 기본기를 쌓을 수 있었습니다. 강의 추천합니다.

    • 박우빈
      知識共有者

      목동 개발자님! 기본기를 쌓으시는 과정에 동참할 수 있어서 기쁘네요. 테스트 작성하는 일이 때로는 고되지만, 같이 힘내보시죠. ㅎㅎㅎ 수강평 남겨주셔서 감사합니다! ☺️

  • Jason님의 프로필 이미지
    Jason

    受講レビュー 3

    平均評価 5.0

    5

    100% 受講後に作成

    테스트 관련해서 가려운 곳을 정말 벅벅 긁어주시는 강의 였습니다. 혼자 공부하는데 테스트 코드 관련해서 피드백을 받을 수 있는 곳이 없다보니 IT동아리나 교육프로그램의 프로젝트 레포 여러개를 뒤져가면서 테스트 코드는 어떻게 짜야할지에 대한 고민을 하고 있었는데 강의 통해서 정말 도움이 많이 됐습니다. 이제 방향과 방법을 어느정도 알았으니 스스로 익히고 제것으로 만들어야하는 단계가 남았네요. 좋은 강의 감사드립니다. 강의 준비를 엄청 신경써서 하신게 느껴졌습니다. 감사합니다.

    • 박우빈
      知識共有者

      Jason님! 시원~한 수강평 감사합니다~! 도움이 많이 되셨다니 제게는 정말 큰 힘이 되네요. 걸어가시는 학습의 여정 응원하겠습니다. :)

¥9,036

wblukeの他の講座

知識共有者の他の講座を見てみましょう!

似ている講座

同じ分野の他の講座を見てみましょう!