ATDD 강의 실습을 위한 지하철 노선도 애플리케이션
#Step3 TODO List
- 인수 테스트 수정
- 노선 추가 요금 부과
- 로그인 사용자의 연령별 할일
- 문서 수정
- 요금 정책 추가
- 추가요금 : 노선별 추가 요금 필드 추가하기
- 요금 : 여러 노선들을 이용한 경우 가장 높은 추가 요금만 적용
- 로그인 사용자의 경우 연령별 요금으로 계산
- 6세이상 ~ 13세미만 : 350원 공제 후 50%할인
- 13세이상 ~ 19세미만 : 350원 공제 후 20%할인
- 인수 테스트 변경 -> 문서화 변경 -> 기능 구현 순으로 진행하세요.
- 커밋 단위를 작게 하기
#Step2 PR 수정 TODO List
- 요금 구하는 과정 리팩터링 해보가
- document 만들때 실제 객체 사용에 대한 고민
#Step2 TODO List
- 요금 정보 조회
- 인수 조건 도출
- 인수 테스트 작성
- 경로 조회시 요금 정보 반환 기능 구현
- 인수 테스트 (수정) -> 문서화 -> 기능 구현 순으로 진행하세요
- 커밋 단위를 작게 하기
- 지하철 운임은 거리비례제로 책정하기 (실제 경로가 아닌 최단거리 기준)
#Step2 - 인수 조건
Feature: 지하철 경로 검색시 요금과 함께 응답하기
Scenario: 두 역의 최단 거리 경로를 조회
Given 지하철역이 등록되어있음
And 지하철 노선이 등록되어있음
And 지하철 노선에 지하철역이 등록되어있음
When 출발역에서 도착역까지의 최단 거리 경로 조회를 요청
Then 최단 거리 경로를 응답
And 총 거리와 소요 시간을 함께 응답함
And 지하철 이용 요금도 함께 응답함
#Step1 PR 수정 TODO List
- PathAcceptanceTest 에서 환승, 반대 방향의 경우도 테스트 작성
- document(), requestParameters(), responseFields() 메서드로 분리하기
- LineTest의 given절, duration 인자 중복 제거
- Sections 기간에 대한 단위 테스트 추가
#Step1 TODO List
- 경로 조회 시 최소 시간 기준으로 조회되도록 구현
- 노선추가 & 구간 추가 시 거리와 함께 소요시간 정보 추가하기.
- 인수 테스트 (수정) -> 문서화 -> 기능 구현 순으로 진행하세요.
- 커밋 단위를 작게 하기
#Step1 - 인수 조건
Feature: 지하철 경로 검색
Scenario: 두 역의 최소 시간 경로를 조회
Given 지하철역이 등록되어있음
And 지하철 노선이 등록되어있음
And 지하철 노선에 지하철역이 등록되어있음
When 출발역에서 도착역까지의 최소 시간 기준으로 경로 조회를 요청
Then 최소 시간 기준 경로를 응답
And 총 거리와 소요 시간을 함께 응답함