ATDD-Subway-Map
이라는 프로젝트를 Next Step에서 시작하게 되었다.
Book-Crew 라는 기술서적을 읽고, 서로 리뷰하고 모르는걸 찾아보면서 공부하는 스터디를 진행하고 있는데, 스터디원중에 한분께서 Next Step을 추천하셨고, 정말 많은 도움을 얻었다고 들었다.
이번 교육의 일정은 아래와 같다.
📻 교육일정
교육 기간은 2024-01-22(월) ~ 2024-02-29(목) 입니다.
교육기간 동안 온라인 강의는 라이브로 진행될 예정이며 교육기간 중 매주 목요일에 5회 진행됩니다.
첫 강의 전에 교육이 시작되는 이유는 사전 미션 및 강의 수강 준비를 위해서입니다.
- 1월 25일: 1주차 강의
- 2월 1일: 2주차 강의
- 2월 3일: 모짝미(모여서 짝 프로그래밍 미션)
- 희망자에 한해서 오프라인으로 모여서 페어 매칭 후 미션 진행, 참여 여부는 추후 받을 예정
- 2월 8일: 강의 없음
- 2월 15일: 3주차 강의
- 2월 22일 : 4주차 강의
- 2월 29일 : 5주차 강의
🎈 강의시작
- 과정소개
- 인수 테스트
- 인수 테스트 만들기
- 미션 소개
- 확신 & 경험부재
- 방법
- 해야하는 이유(왜 하는지 모르겠다, 동료를 이해시키기 어려움)
- 요구사항 및 도메인 이해
❓ TDD 잘하는 방법
- E2E 테스트 기반의 인수 테스트 작성 경험
- 인수 테스트 기반 웹 API 기능 구현 경험
- 웹 프로젝트 레벨 TDD 경험
- 스프링 기반 테스트 도구 학습
- 코드 리뷰 프로세스 경험
- 인수 테스트 기반 TDD를 할 수 있다
- 테스트를 효과적 리펙터링하여 유지보수를 잘 할 수 있다
- 새로운 프로젝트 뿐 아니라 레거시에도 TDD를 할 수 있다
- 남들에게 TDD와 ATDD가 실무에서 가능하다고 설명할 수 있다.
이런 목표를 이루기 위해서는 하나라도 테스트를 더 짜보고, 한번이라도 더 타자를 쳐 보는것이라고 한다.

😊 슬기롭게 임하는 방법!
ATDD? TDD를 하기 위한 인수테스트
- 단위 테스트
- 통합 테스트
- E2E 테스트
- 만원을 입력한다
- 10장의 로또가 구매된다
- 구입한 로또 번호가 출력된다
- 지난주 당첨 번호로 1,2,3,4,5,6을 입력한다
- 당첨 통계가 출력된다
- 수익률이 계산된다
📎 요약해보자
TDD 특성상 개발 시간이 많이 드는건 어쩔 수 없는건가?
TDD가 익숙해지면 더 빨라지기도 하는지? => 개발이란 행위를 단지 코드작업으로 한정짓는지, 아니면 정상동작 하는지 나머지 시간까지 개발 시간으로 합친다면 크게 차이가 나지 않는다. 라고 한다. 하지만 단순히 코드를 짠다는것만 말하면 당연히 TDD를 하는게(테스트코드를 짜지 않는 시간에 비해) 시간이 더 많이 든다.
하지만 전체적으로는 손수 테스트를 해야하고 내가 짠 코드를 불안해하지 않는다는 측면에서 이득이 있다.
어제까지 채용 과제를 진행해서 정신이 없었는데, 오늘부터 다시 달려봐야겠다.
https://github.com/devMtn30/atdd-subway-map
GitHub - devMtn30/atdd-subway-map: ATDD 과정 저장소 - 지하철 노선도 관리 미션
ATDD 과정 저장소 - 지하철 노선도 관리 미션. Contribute to devMtn30/atdd-subway-map development by creating an account on GitHub.
github.com
'Study > Next Step' 카테고리의 다른 글
[Next Step] ATDD, 클린 코드 with Spring 8기 3주차 리뷰 (0) | 2024.03.05 |
---|---|
[Next Step] ATDD, 클린 코드 with Spring 8기 2주차 리뷰 (1) | 2024.02.17 |