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

8주차 - 김정호 #83

Merged
merged 8 commits into from
Feb 18, 2023
Merged

8주차 - 김정호 #83

merged 8 commits into from
Feb 18, 2023

Conversation

hou27
Copy link
Member

@hou27 hou27 commented Feb 18, 2023

close #79

파일 경로가 하드 코딩되어있어
테스트하려면 반드시 해당 경로에 파일이 위치해야 한다.
이런 경로 뿐만 아니라 하드 코딩된 ip, port 정보도
테스트를 어렵게 만든다.
의존하는 대상을 직접 생성하는 경우도
테스트 시 올바르게 동작시키기 위해
필요한 환경을 모두 구성해야하므로 테스트가 어려워진다.
1. https://unabated.tistory.com/1041 - java에서 static을 지양해야하는 이유
	- 테스트 중 static한 field 또는 method를 사용할 경우 모든
	클래스는 예상되는 상태에서 시작되어야하며 매우 까다로워질 수 있다.
2. AuthUtil 클래스가 어떠한 인증 서버와 통신하는 경우 동작하고 있는 인증
서버가 필요하며, 통신할 인증 서버 정보를 시스템 프로퍼티에서 가져온다면
그 정보 또한 테스트 환경에 맞게 설정해야 한다.
시점에 따라 결과가 달라지기 때문에 테스트가 어렵다
파일 경로를 변경할 수 있는 메서드를 구현하여
경로를 교체할 수 있도록 함.
경우에 따라 생성자를 통해 받게 작성할 수도 있다.
의존 대상을 주입 받도록 하여 테스트 진행 시
대역을 사용할 수 있도록 하였다.
테스트하고 싶은 코드를 따로 분리하여
해당 기능만 테스트할 수 있다.
생성 기능은 따로 분리하여
테스트할 때 대역을 사용할 수 있도록 함.
@hou27 hou27 added this to the GDSC MJU 1기 TDD 스터디 milestone Feb 18, 2023
@hou27 hou27 requested a review from rladuswl February 18, 2023 12:07
@hou27 hou27 self-assigned this Feb 18, 2023
Copy link
Collaborator

@rladuswl rladuswl left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

수고하셨습니다~

@rladuswl rladuswl merged commit 8188e1c into main Feb 18, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

8주차 - 테스트 가능한 설계 - 김정호
2 participants