본문 바로가기

업무

테스트 누락으로부터 배운 점(feat. hotfix브랜치)

게시글을 상단고정하는 기능을 개발하였다. 

그런데 이 기능을 개발하면서 기획적으로도 누락된 내용도 많았다만 내 스스로도 부족한 점이 너무 많았어서 이번 실수를 통해 배운 점을 글로 남겨놓고자 한다. 팀원 덕분에 내가 최근에 안일한 마음가짐으로 일을 했다는 것을 뼈저리게 느끼게 되었고, 그런 실수를 알려주고 고쳐주려는 사람이 있기에 감사할 따름이다. 

 

[테스트의 중요성] 

테스트 케이스를 작성할 시간이 부족하다면, 적어도 내가 개발한 기능에 대해서는 내 스스로도 테스트를 잘 해야한다. 

물론 QA팀도 있지만, QA팀에 과의존해서는 안된다. 내가 그 기능(신규기능, 추가기능)을 개발했기 때문에 나는 그 기능에 대한 개발자로서 주인의식과 전문성을 가지고 테스트에 임해야한다. 

만약 기존에 잘 돌아가는 기능에, 추가 기능을 내가 개발해서 로직을 작성했다면 -> 기존 기능이 잘 돌아가는지 확인 필요하며

내가 추가로 작성한 로직까지 합쳐졌을때 그 로직이 잘 돌아가는지 개발자 도구를 켜서 확인했어야 한다. 

 

또한, 내가 개발한 기능들에 대해서 추가적으로 나올 수 있는 예외사항은 없을지? 항상 주시해야 한다. 

 

[hotfix 브랜치 기능 나누기] 

원래 월요일에 나가려고 기능 개발중이던 hotfix 브랜치가 있었다. 그런데 갑자기 라이브 이슈가 터지면서 마음을 급하게 먹는 바람에 개발중이던 hotfix 브랜치에 작업을 했었는데, 프론트엔드 팀원도 지금 나갈 수 없고 월요일에 나가는걸로 알고있어서 라이브 같이 나갈 수 없다고 하는 상황이었으며 + 기존에 작업한 내용이 이미 stage 환경에 있었어서 내가 개발한 기능만을 따로 테스트해볼 수가 없었다.

cherrypick은 자신이 없었고, 내가 개발한 것들을 다시 기억하고 살려서 main 브랜치에서 새로 hotfix 브랜치를 따서 작업을 했는데 그래도 불안함은 가시지 않았다.

어차피 이미 stage에 반영된거는 상관없다고 하셔가지고 내가 개발한 것만 잘 기억해서 hotfix 브랜치 새로 따서 작업해도 무방하다는 것이었다. 

 

앞으로 뭐든 '기능별로' hotfix 브랜치를 main에서 따서 작업하는걸로 하자.