Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

7주차 - 대역 #69

Open
4 tasks
rladuswl opened this issue Feb 6, 2023 · 7 comments
Open
4 tasks

7주차 - 대역 #69

rladuswl opened this issue Feb 6, 2023 · 7 comments
Assignees
Labels
documentation Improvements or additions to documentation

Comments

@rladuswl
Copy link
Collaborator

rladuswl commented Feb 6, 2023

⭐ Chapter 7. 대역

실제 구현을 대역으로 대체하는 법을 알아보고 실습하면서 다양한 상황에서 테스트 코드를 작성하는 능력을 키운다.

  • 대역의 종류 및 사용법을 공부하고 실습해보면서 실제 구현이 아닌 대역으로 테스트를 원활하게 진행하는 법을 익힌다.
  • Chap 7의 내용을 개인 기술 블로그에 정리한 후 자신의 issue에 comment로 링크 남기기
  • 문제 만들고, Core Member에게 제출하기(스터디 전날까지 부탁드려요!)

  • 모든 과정을 마친 후 pull request 올리기(pr 올릴 변경사항이 없다면 설명을 남긴 후, 체크해주세요)
@hou27 hou27 added this to the GDSC MJU 1기 TDD 스터디 milestone Feb 6, 2023
@hou27 hou27 added the documentation Improvements or additions to documentation label Feb 6, 2023
@hou27 hou27 mentioned this issue Feb 6, 2023
4 tasks
@hou27
Copy link
Member

hou27 commented Feb 13, 2023

📚 Chap 7 문제 📚

정리본

X ( 전체 문제 참고 )

Chap 7 전체 문제

<김정호>

Q. BDDMockito란 Behavior-Driven Development로, Mockito를 사용했을 때 발생하는 ‘시나리오에 맞지 않아보이는 메서드명’ 애로사항을 개선하기 위해 사용되는 클래스이다. (O, X)

A. O

BDD는 Behavior-Driven Development의 약자로 시나리오를 기반으로 테스트하는 패턴을 권장한다.

Mockito.when -> BDDMockito.given

Mockito.verify -> BDDMockito.then

와 같이 메서드명을 변경한 Mockito 클래스를 상속하여 Wrapping한 클래스이다.

<한규범>

문제 : DAO와 리포지토리와 같이 저장소에 대한 대역은 메모리를 이용한 OO 구현을 사용하는 것이 테스트 코드 관리에 유리하다.

답: 가짜

<장채은>

문제) 모의 객체는 많이 사용하면 사용할수록 검증 코드가 간결해진다 (o,x)
답) X

문제) 기대한대로 상호작용하는지 행위를 검증하며, 기대한대로 동작하지 않으면 익셉션을 발생시키는 대역의 종류 중 하나는?
답) 모의(Mock)

<김연지>

rladuswl

@hou27
Copy link
Member

hou27 commented Feb 13, 2023

@rladuswl @Qbeom0925 @chaerlo127
이번 주는 사정상 이곳에 코멘트로 문제 선정 이유 또는 해설 남겨주세요~~

@hou27
Copy link
Member

hou27 commented Feb 13, 2023

김정호

문제 및 해설

Q. BDDMockito란 Behavior-Driven Development로, Mockito를 사용했을 때 발생하는 ‘시나리오에 맞지 않아보이는 메서드명’ 애로사항을 개선하기 위해 사용되는 클래스이다. (O, X)

A. O

BDD는 Behavior-Driven Development의 약자로 시나리오를 기반으로 테스트하는 패턴을 권장한다.

Mockito.when -> BDDMockito.given

Mockito.verify -> BDDMockito.then

와 같이 메서드명을 변경한 Mockito 클래스를 상속하여 Wrapping한 클래스이다.

문제 선정 이유
이번 챕터를 공부하면서 BDDMockito를 처음 봤었습니다.

어떤 클래스인지, 왜 사용하는지 다함께 짚고,
쉽게 읽히는 테스트 코드를 짤 수 있었으면 좋겠다는 생각에
이렇게 문제를 만들었습니다.

@Qbeom0925
Copy link
Member

한규범

문제 및 해설
Q. 문제 : DAO와 리포지토리와 같이 저장소에 대한 대역은 메모리를 이용한 OO 구현을 사용하는 것이 테스트 코드 관리에 유리하다.

A. 가짜

문제 선정 이유
최근에 테스트 케이스에 대해서 공부하고 작성하는 단계인 프로젝트를 진행하면서 가짜 구현에 대해서 이해하기 힘들었던 경험이 있어 문제로 채택하였습니다.

@chaerlo127
Copy link
Member

장채은

  • 문제 및 해설
  1. 모의 객체는 많이 사용하면 사용할수록 검증 코드가 간결해진다 (o,x)
    답) X
  2. 기대한대로 상호작용하는지 행위를 검증하며, 기대한대로 동작하지 않으면 익셉션을 발생시키는 대역의 종류 중 하나는?
    답) 모의(Mock)
  • 문제 선정 이유
    모의 객체를 무조건적으로 사용하는 것은 좋지 않다는 것이 중요하다고 생각이 들었고, 이를 상기시키고자 두 문제 모두 '모의'와 관련된 문제를 선택했습니다.

@rladuswl
Copy link
Collaborator Author

Q) 대역의 종류에는 ____, ____, ____, ____ 가 있다. 이 중 실제 동작하는 구현은 필요하지 않고 단순히 원하는 동작만 수행하면 되는 대역은 ____ 이다.

A) 스텁, 가짜, 스파이, 모의 / 스텁

  • 문제 선정 이유
    대역의 종류와 각각 상황에 맞는 사용법을 공부하였다. 회원가입 기능 구현에서 단순히 원하는 동작만 수행하면 되는 부분에 스텁을 사용하였는데, 왜 스텁을 사용하였는지 알고 써야 한다는 생각에 그 이유를 문제로 내게 되었다.

@hou27
Copy link
Member

hou27 commented Mar 5, 2023

[TDD] 6. 대역

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
documentation Improvements or additions to documentation
Projects
None yet
Development

No branches or pull requests

4 participants