Showing Posts From

팀원이

팀원이 자동화 테스트를 짜지 않고 수동으로 진행했다

팀원이 자동화 테스트를 짜지 않고 수동으로 진행했다

또 수동으로 했다 월요일 아침이다. 스탠드업 미팅에서 민준이가 말했다. "금요일 배포된 기능, 수동 테스트 완료했습니다." 순간 머리가 아팠다. 저번 주에 말했다. 저번 달에도 말했다. "이거 반복되는 거니까 자동화 스크립트 짜두자." 민준이 대답은 똑같다. "네, 다음엔 꼭 하겠습니다." 다음은 안 온다. 항상 지금이다.회의 끝나고 민준이 붙잡았다. "왜 또 수동으로 했어?" 민준이가 말한다. "자동화 짜는 게 2시간 걸리는데, 수동으로 하면 30분이면 돼요." 맞는 말이다. 지금 당장은. 그런데 이 테스트, 매주 한다. 한 달이면 4번. 1년이면 48번. 30분 × 48번 = 24시간. 자동화 2시간 투자하면 22시간 세이브다. 이 계산을 설명했다. 민준이가 고개를 끄덕인다. "아, 그렇네요." 그런데 다음 주에 또 수동으로 한다. 설득이 일이 됐다 점심 먹으면서 팀원들한테 또 말했다. "자동화 가능한 건 자동화하자. 우리가 수동 테스트만 하려고 QA 한 거 아니잖아." 다들 고개를 끄덕인다. 이해는 한다. 실천을 안 할 뿐이다. 지현이가 말한다. "팀장님, 자동화 스크립트 짜면 나중에 유지보수도 해야 되잖아요." 맞다. 유지보수는 필요하다. 그런데 수동 테스트는 유지보수가 없나? 매번 똑같은 걸 클릭하는 게 유지보수 아닌가? "UI 바뀌면 스크립트 다 고쳐야 돼요." "그럼 테스트케이스 엑셀도 다 고쳐야 되잖아." "근데 엑셀은 빨리 고치잖아요." "스크립트도 잘 짜두면 빨라." 이런 대화를 3년째 하고 있다.팀장 된 지 3년. 처음엔 직접 자동화 스크립트 짰다. 팀원들한테 보여주면서 "이렇게 하는 거야" 했다. 효과는 있었다. 한 달 정도. 그 다음엔 다시 수동 테스트로 돌아간다. 왜일까. 고민했다. 결론은 간단했다. 당장 급한 일이 자동화보다 많다. 버그 터지면 수정 확인해야 되고. 기획 바뀌면 테스트 다시 짜야 되고. 개발팀에서 "이거 테스트 좀 급하게" 하면 달려가야 되고. 자동화는 중요한데 급하지 않다. 그래서 영원히 미뤄진다. 기술 부채가 쌓인다 우리 팀 자동화 커버리지 37%. 작년에 35%였다. 2% 올랐다고 자랑할 순 없다. 기능은 매달 늘어나는데 자동화는 제자리걸음이다. 계산해봤다. 지금 수동으로 돌리는 테스트 케이스 650개. 한 케이스당 평균 3분. 650 × 3분 = 1950분 = 32.5시간. 배포 전에 풀 테스트 돌리면 팀원 8명이 하루 종일 달라붙는다. 그래서 요즘엔 풀 테스트 안 한다. 리스크 높은 것만 골라서 한다. 리스크 낮다고 판단한 곳에서 버그가 나온다. 그럼 또 내 책임이다. 경영진한테 보고할 때마다 물어본다. "자동화율이 왜 이렇게 낮죠?" 설명한다. "인력 대비 기능 증가 속도가 빨라서, 자동화 짤 시간이 없습니다." "그럼 자동화 전담 인력 뽑으시죠." "예산 승인 부탁드립니다." "지금은 어렵고요." 이 대화도 2년째다.개발팀은 기술 부채 쌓이면 리팩토링 스프린트 만든다. QA팀은 그런 거 없다. 테스트 자동화 부채는 눈에 안 보인다. 배포는 된다. 품질이 낮아질 뿐이다. 품질이 낮아지면 장애가 난다. 장애 나면 포스트모템 쓴다. "재발 방지 대책: 해당 케이스 테스트 자동화" 그 자동화, 누가 언제 하나. 또 급한 일 밀려온다. 악순환이다. 다른 회사는 어떨까 QA 리드 모임에서 만난 선배가 말했다. "우리 회사는 자동화 안 하면 코드 리뷰에서 반려해." 부럽다. 그 회사는 자동화가 문화다. 우리 회사는? 자동화는 "하면 좋은 것". 필수가 아니라 옵션이다. 옵션은 항상 스킵된다. 다른 선배는 말했다. "자동화 전담팀 만들었어. 3명." 더 부럽다. 우리 팀은 8명 전부 기능 테스트에 매달린다. "그 전담팀이 자동화 프레임워크 다 구축해놨어. 다른 팀원들은 거기다 케이스만 추가하면 돼." 완벽한 구조다. 우리 팀은 프레임워크도 제각각이다. Selenium 쓰는 사람, Playwright 쓰는 사람, Cypress 쓰는 사람. 통일하자고 했는데 각자 익숙한 게 다르다. "그냥 편한 거 쓰세요." 이렇게 말한 내가 문제다. 내가 할 수 있는 건 고민했다. 팀원들 탓할 수는 없다. 바쁜 건 사실이니까. 그럼 뭘 바꿔야 하나.자동화 시간을 업무 시간에 명시적으로 넣기.매주 금요일 오후는 자동화 작업 시간. 다른 일 시키지 않기.자동화 성과를 평가에 반영.수동 테스트만 하면 보통. 자동화 구축하면 좋음.작은 것부터 시작.30분짜리 테스트부터 자동화. 성공 경험 쌓기.템플릿 만들기.자동화 스크립트 시작 템플릿. 복붙해서 시작할 수 있게.이걸 이번 주 1on1 때 팀원들한테 말할 것이다. 그래도 답답하다 솔직히 말하면. 이런 걸 내가 챙겨야 한다는 게 피곤하다. 자동화는 기본이어야 한다. "자동화 하세요"가 아니라 "자동화 안 한 이유가 뭐죠?"가 되어야 한다. 그런데 현실은 반대다. 개발자들은 테스트 코드 안 짜면 리뷰 통과 안 된다. QA는 자동화 안 해도 아무도 안 물어본다. 이게 QA의 현실이다. 13년 했는데 이건 안 바뀐다. 개선은 되는데 본질은 그대로다. 자동화는 여전히 옵션이고. 품질은 여전히 QA만의 책임이고. 기술 부채는 여전히 눈에 안 보인다. 퇴근길에 생각했다. 내년에도 똑같은 고민 할 것 같다. 그래도 해야 한다. 안 하면 더 심해지니까.수동 테스트는 빠르지만, 반복되면 가장 느리다.