
334
Part 2
엔지니어링
❷
이 줄은 너무 많은 구현 세부 사항을 드러내고, 코드를 읽고 이해하기 어렵게 만듭니다.
다음으로 단위 테스트를 작성한 뒤 실패하는 것을 확인해 봅시다.
deftest_add_is_alone_column():
df=pd.DataFrame({
'SibSp':[0,1,2,0,0],
'Parch':[0,0,5,0,1]
})
expected=pd.DataFrame({
'SibSp':[0,1,2,0,0],
'Parch':[0,0,5,0,1],
'IsAlone':[1,0,0,1,0]
})
assert_frame_equal(expected,add_is_alone_column(df))
주로 새 테스트는 실패해야 합니다. 다음 단계에서는 ‘메서드 추출’ 리팩터링 단축키를 적용
하여 이 로직을 새 함수인
add
_
is
_
alone
_
column
()
로 추출합니다. 이 새 함수를 가져와서
모든 테스트가 통과하는지 확인하고, 변경 사항을 커밋합니다. 다시 한번 만세!
8.2.3
우리가 이룬 것을 돌아보기
리팩터링 주기를 몇 번 더 반복하고 나서, 우리는 코드베이스를 모듈화되고, 읽기 쉽고, 테스
트된 상태로 만들었습니다. ...