-
Notifications
You must be signed in to change notification settings - Fork 66
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
[Test]: 테스트코드 리팩터링 #79
Comments
안녕하세요! 너무 좋은 의견 주셔서 감사합니다!
it.each 메서드를 사용하는 방법도 고려해봤는데요, 코드는 이뻐지고 간결해지지만 코드를 읽는 개발자가 정말 이해하기 쉬울까? 라는 측면에서 의문점을 가졌었어요. 기존 코드는 위에서 부터, 아래로 눈을 내려가며 쉽게 읽히는 반면, it.each를 사용하면, fixture의 값들과 실제 그 fixture들이 사용되는 부분이 코드 물리적으로 거리가 있다보니 쉽게 읽히지 않는다고 생각했어요. 테스트 코드는 문서화의 역할도 크게 하고 있기 때문에 가독성이 좋게 작성되면 좋겠다는 소망을 해왔었습니다! Step2) 테스트 관심사에 따른 describe 세분화 이 부분은 너무 좋은것 같아요. 관심사 별로 describe그룹을 나누어, 개발자의 인지 능력을 최소화하여 부담을 덜어줄 수 있을 것 같네요! |
@okinawaa 남겨주신 피드백대로 테스트 관심사에 따른 describe 세분화 작업 후 PR을 생성하겠습니다. 추가적인 궁금증현재 다른 테스트코드들을 에 영어와 한글이 혼재되어있습니다. describe('hasBatchim', () => {
it('should return true for the character "값"', () => { // ⛳️
expect(hasBatchim('값')).toBe(true);
});
// ...
});
describe('hasSingleBatchim', () => {
it('홑받침을 받으면 true를 반환한다.', () => { // ⛳️
expect(hasSingleBatchim('공')).toBe(true);
// ...
});
// ...
}); 궁금증:
|
Description
테스트코드 리팩터링
우선, 한글을 사용한 멋진 오픈소스 프로젝트에 응원의 글을 남깁니다. 👍
현재 코드에서 아래의 사항을 개선하면 더 멋진 코드가 될 것 같아 issue를 남깁니다. :)
하단에 리팩터링 예시코드를 남겨두었으니 편하게 피드백주시면 감사하겠습니다.
Possible Solution
Current Code
Step1) it의 each 메서드 사용.
기대 효과:
Refactored
Step2) 테스트 관심사에 따른 describe 세분화
현재 리팩터링 된 코드는, 하나의 describe 내에서
초성이 포함되어있다고 판단되는 경우
와초성이 포함되어있다고 판단되지 않는 경우
를 전부 테스트한다는 아쉬움이 있습니다. 이는, 관심사에 따라 describe를 세분화하여 해결할 수 있습니다.Result
etc.
No response
The text was updated successfully, but these errors were encountered: