Community

개발자 99% 커뮤니티에서 수다 떨어요!

← Go back
TIL ( 2022-03-07 ) 9장
#clean_code
2년 전
641
1

오늘 TIL 3줄 요약

  1. 테스트 코드는 실제 못지 않게 깨끗하게 짜야 한다.

  2. 깨끗한 테스트는 F.I.R.S.T 규칙을 따른다.

  3. 테스트 코드는 지속적을 관리하자!.

TIL (Today I Learned) 날짜

2022.03.07

오늘 읽은 범위

9장. 단위 테스트

책에서 기억하고 싶은 내용을 써보세요.

  1. 1 TDD의 세 가지 법칙( p.155 )

  2. 많은 프로그래머들이 제대로 된 테스트 케이스를 작성 해야 한다는 좀 더 미묘한 (그리고 더욱 중요한) 사실을 놓쳐버렸다. ( p.156 )

  3. 테스트 코드는 실제 코드 못지 않게 중요하다. 테스트 코드는 이류 시민이 아니다. 테스트 코드는 사고와 설계와 주의가 필요하다. 실제 코드 못지 않게 깨끗하게 짜야 한다. ( p.157 )

  4. 테스트는 유연성, 유지보수성, 재사용 성을 제공한다. 테스트 케이스가 있으면 변경이 쉬워지기 때문이다. ( p.157 )

  5. F.I.R.S.T 깨끗한 테스트는 다음 다섯 가지 규칙을 따르는데, 각 규칙에서 첫글짜를 따오면 FIRST가된다.( p.169 )

    • 빠르게( Fast ) : 테스트는 빨라야 한다 , 자주 돌리지 못하면 초반에 문제를 찾아내 고치지 못한다.

    • 독립적으로( Independent ) : 각 테스트는 서로 의존하면 안 된다. 각 테스트는 독립적으로 그리고 어떤 순서로 실행해도 괜찮아야 한다.

    • 반복가능하게( Repeatable ): 테스트는 어떤 환경에서도 반복 가능해야 한다. (네트워크에 연결되지 않은)노트북 환경 에서도 실행할 수 있어야 한다. 테스트가 돌아가지 않은 환경이 하나라도 있다면 테스트가 실패한 이유를 둘러댈 변명이 생긴다. 그리고 환경이 지원되지 않기에 테스트를 수행하지 못하는 상황에 직면한다.

    • 자가 검증하는( Self-Validating ) : 테스트는 부울bool값으로 결과를 내야 한다. 성공 아니면 실패다.

    • 적시에(Timely): 테스트는 적시에 작성해야 한다. 단위 테스트는 테스트하려는 실제 코드를 구현하기 직전에 구현한다.

  6. 테스트 코드는 지속적으로 깨끗하게 관리하자. 표현력을 높이고 간결하게 정리하자. 테스트 api를 구현해 도메인 특화 언어(DSL)를 만들자.

오늘 읽은 소감은? 떠오르는 생각을 가볍게 적어보세요

  • 테스트 케이스를 한번 씩 조금 사용하기만 해봐서 이렇게 코드를 짜는데 도움이 되는것을 알았다..

    다음부터는 재대로된 테스트 케이스를 작성 해서 코드를 짜봐야겟다!

궁금한 내용이 있거나, 잘 이해되지 않는 내용이 있다면 적어보세요.

  1. pagePath는 "웹 로봇 crawler" 이 사용하는 객체다. ( p.159 )

  2. "BUILD-OPERATE-CHECK 패턴" ( p.161 )

  3. 도메인에 특화된 언어 "DSL" (p,161)

  4. "TEMPLATE METHOD 패턴 6 [ gof ] "( p.165 )


오늘 읽은 다른사람의 TIL

dongdhy님의(https://nomadcoders.co/community/thread/3407)

rmaomina님의 (https://nomadcoders.co/community/thread/3393)

1 comment