Showing Posts From

커뮤니티

QA 커뮤니티 스터디 - 자동화 입문기

QA 커뮤니티 스터디 - 자동화 입문기

6시 30분 퇴근, 7시 스터디 퇴근했다. 6시 반. 구로디지털단지역 근처 카페로 간다. 스터디 7시 시작. 밥은 편의점 삼각김밥. 먹으면서 노트북 켠다. 오늘 과제: Selenium 기초.4년 차인데 아직도 매뉴얼이다. 주변 동기들은 자동화 넘어갔다. 나만 스크립트 못 짠다. 카페 도착. 5명 모였다. 다들 비슷하다. 퇴근하고 온 티. 한 명은 야근 빠지고 왔다고. 파이썬은 어렵다 스터디장이 화면 공유한다. "오늘은 XPath 선택자입니다." driver.find_element(By.XPATH, "//button[@id='login']")이게 뭔 소린지. HTML 구조 파악이 먼저래. 개발자 도구 열어본다.30분 따라 하는데 에러. "ElementNotFound Exception" 뭐가 문젠지 모르겠다. 옆 사람이 봐준다. "이거 iframe이에요." 아, 그래서 안 잡혔구나. 매뉴얼 테스트는 감으로 했다. 화면 보고 누르면 됐다. 코드는 정확해야 한다. 틀리면 바로 에러. 대충이 안 통한다. 머리 아프다. 현실은 매뉴얼 회사 돌아가면 다르다. 아침부터 빌드 테스트. 자동화? 그럴 시간 없다. 어제 배운 거 써먹고 싶다. 로그인 자동화라도. 근데 PM이 부른다. "민수씨, 긴급 테스트요." "신규 기능 내일 배포래요." 케이스 50개. 오늘 다.자동화는 저녁에. 일단 손으로 테스트. 화면 켜고 터치하고. 기획자가 묻는다. "자동화하면 빠르지 않아요?" 빠르지. 근데 스크립트 짜는 시간이. 처음 만드는 게 오래 걸린다. 케이스 50개 자동화? 2주는 걸린다. 손으로 하면 오늘 끝. 당장은 수동이 빠르다. 그게 함정이다. 스터디 3주 차 점점 어려워진다. assert 문, 예외 처리. Page Object Model. "유지보수 쉽게 하려면요." 스터디장이 설명한다. 클래스로 페이지 관리. 회사에 적용 상상해본다. 우리 앱 화면 100개. 클래스 100개? 머리 복잡하다. 그냥 하나씩 스크립트 짜면 안 되나. 안 된다고 한다. 나중에 지옥. 한 명이 말한다. "저희 회사는 자동화율 70%예요." 부럽다. "처음엔 힘들었는데." "지금은 회귀 테스트 2시간." 우리는 3일 걸린다. 개발자와의 거리 점심시간에 개발자 옆자리. "민수씨, 테스트 끝났어요?" "아직이요. 오후에." 슬쩍 물어본다. "형, 파이썬 어렵지 않아요?" "어? 쓰면 되는데." 그냥 쓰면 된다고. 나한텐 산이다. 개발자는 다른 세상 산다. 코드 리뷰 미팅. 다들 깃허브 본다. 나만 모른다. QA도 코드 알아야 한다는데. 어디까지 알아야 하나. 개발자만큼? 아니면 자동화 스크립트만? API 테스트는? 성능 테스트는? 끝이 없다. 야근 후 스터디 갈까 말까 금요일 저녁 5시. 배포 준비. 최종 빌드 확인. 스터디는 7시. 갈 수 있을까. 5시 반, 버그 발견. 치명적이다. 로그인 안 됨. 개발자 호출. 6시, 핫픽스 빌드. 다시 테스트. 7시 넘었다. 카톡 온다. 스터디장. "오늘 못 오시나요?" "죄송해요. 배포라." 이게 5주째 2번째. 빠지면 못 따라간다. 근데 어쩌나. 회사가 우선이다. 배포 망하면 내 책임. 스터디는... 나중에. 8시, 배포 완료. 모니터링 시작. 집 가면 9시 반. 내일 보충해야지. 강의 영상 있으니까. 혼자 보면 되지. 근데 혼자 보면 모른다. 질문할 사람 없다. 결국 안 본다. 동기의 이직 대학 동기한테 카톡. "형 나 이직했어." 자동화 QA로. 연봉 6천. 나보다 1800 많다. 자동화 할 줄 안다고. 부럽다. 솔직히 많이. "형도 공부해." "수요 진짜 많아." 안다. 나도 안다. 근데 안 된다. 시간이 없다. 아니, 핑계다. 퇴근하면 피곤하다. 주말엔 쉬고 싶다. 여자친구도 만나야지. 동기는 어떻게 했을까. 독하게 했겠지. 나는 안 독하다. 그게 차이다. 스터디 중간 점검 8주 차. 중간 발표. 각자 만든 스크립트 공유. 나는 로그인 자동화. 겨우 만들었다. 5개 케이스. 다른 사람들. 한 명은 전체 플로우. 20개 케이스 돌린다. "매일 1시간씩 했어요." 매일. 나는 일주일에 2시간. 실력 차이 난다. 당연하다. 투자 시간이 다르니까. 스터디장이 말한다. "천천히 가도 됩니다." "포기만 안 하면." 위로가 된다. 조금은. 회사에서의 실험 용기 냈다. 팀장한테 말했다. "자동화 좀 해보고 싶어요." "뭘 하려고?" "로그인이요. 매번 반복이라." "시간 얼마나?" 솔직히 말했다. "2주요." "2주면 수동으로 몇 번 하지?" 계산했다. 로그인 테스트 30분. 배포 전 3번. 1.5시간. 한 달이면 6시간. 2주 투자하면 다음 달부터 회수. 설득했다. "해봐." 허락 떨어졌다. 시작했다. 출근해서 1시간씩. 스터디에서 배운 거. 3일 차, 에러. "NoSuchElement" ID가 바뀌었다. 개발자한테 물었다. "이거 ID 고정 가능해요?" "왜요?" "자동화하려고요." "아, 그럼 data-testid 넣어줄게요." 협조 받았다. 신기했다. 말하니까 도와준다. 개발자도 테스트 자동화 찬성. 일주일. 로그인 자동화 완성. 돌려봤다. 30초 만에 끝. 내가 하면 5분. 10배 빠르다. 뿌듯했다. 처음으로. 코드가 일했다. 현실의 벽 2주 후. UI 개편. 디자인 전체 바뀜. 자동화 스크립트. 다 깨졌다. XPath 다 바뀜. 고쳐야 한다. 또 2일. 허무하다. 이게 유지보수구나. 스터디에서 배운 거. POM 써야 했다. 처음부터 제대로 안 했다. 급하게 짜서. 나중에 고생. 다시 짠다. Page Object로. 또 3일. 팀장이 묻는다. "민수야, 자동화 언제 끝나?" "조금만요." "다음 배포 얼마 안 남았어." "수동으로 해." 결국 손으로. 자동화는 또 밀린다. 스터디 vs 현실 스터디에서 배우는 것. 이상적이다. 깔끔한 예제. 회사 현실. 레거시 코드. 스파게티 구조. 스터디: "ID로 찾으세요." 현실: ID 없음. XPath 지옥. 스터디: "테스트 데이터 고정하세요." 현실: 매번 달라짐. 운영 DB 공유. 스터디: "CI/CD 연동하세요." 현실: Jenkins도 없음. 수동 빌드. 간극이 크다. 배운 걸 못 써먹는다. 환경이 안 돼 있다. 누구 잘못일까. 회사? 나? 둘 다. 포기 vs 지속 12주 차. 스터디 거의 끝. 수료증 받는다. 배운 건 많다. Selenium, Pytest, Jenkins 기초. 근데 실무는? 로그인 자동화 하나. 그게 전부. 3개월 동안. 동기는 벌써 이직. 나는 아직도 여기. 차이는 뭘까. 집중력. 시간 관리. 절실함. 나한테 없는 것들. 여자친구가 묻는다. "오빠 요즘 힘들어?" "응. 좀." "자동화 공부 너무 무리하는 거 아냐?" 그럴 수도. 근데 안 하면? 계속 매뉴얼. 5년 차, 10년 차 돼도. 손으로 터치. 무섭다. 작은 성취 어느 날. 로그인 자동화 돌렸다. POM 적용한 버전. 30초 만에 통과. 리포트 자동 생성. 스크린샷도 찍힘. 팀장이 봤다. "오, 이거 괜찮은데?" "다른 것도 해볼래?" "네!" 대답했다. 신났다. 회원가입 자동화. 결제 플로우 자동화. 하나씩 늘린다. 느리다. 한 달에 하나씩. 근데 쌓인다. 6개월 후. 케이스 50개 자동화. 전체의 10%. 아직 멀었다. 근데 시작은 했다. 0에서 10%. 다음은 20%. 1년 후엔 50%? 희망 생긴다. 새로운 스터디 첫 스터디 끝났다. 다음 스터디 시작. 이번엔 API 테스트. Postman, RestAssured. 또 새로운 세계. 끝이 없다. 근데 재밌다. 조금씩. 손에 익는다. 코드 보는 게 덜 무섭다. 에러도 읽힌다. "아, 이거 타입 에러구나." 성장하고 있다. 느리지만. 멈추지 않는다. 1년 후의 나 상상해본다. 1년 후. 자동화율 50%. 아침에 출근하면. 스크립트 돌리고 커피. 1시간 후 결과 확인. 실패한 것만 수동 체크. 나머지 시간은? 새 자동화 작성. 야근 줄어든다. 배포 전에도 여유. 스크립트가 일한다. 이직도 가능. 자동화 QA 포지션. 연봉 협상력 생긴다. 꿈일까. 아니다. 목표다. 동료의 변화 팀 막내가 물어본다. "선배님, 저도 자동화 배우고 싶어요." "스터디 어디서 해요?" 알려줬다. 커뮤니티 링크. 시작 방법. 2주 후. 막내가 보여준다. "제가 짠 스크립트요." 신기하다. 내가 알려주는 사람이 됐다. 몇 달 전엔 나도 초보였는데. 팀 분위기도 바뀐다. 자동화 얘기 나온다. "이건 자동화하면 어때?" 팀장도 관심 생겼다. "우리 팀 자동화율 목표 정할까?" "분기별로 20%씩." 회사가 바뀐다. 한 명이 시작하면. 번진다. 여전한 고민 물론 쉽지 않다. 여전히 야근한다. 배포 전은 여전히 지옥. 자동화해도 예외는 있다. 신규 기능은 수동. 스크립트 없으니까. 자동화 유지보수도 일. 매주 뭔가 깨진다. 고치는 시간 필요. 개발자는 여전히 빠르다. 코딩이 업인 사람들. 나는 아직 따라갈 수 없다. 연봉도 여전히 차이. 자동화해도 개발자보다 적다. QA는 그런 거래. 불공평한가. 모르겠다. 그냥 현실. 그래도 계속 퇴근 후 카페. 또 스터디 간다. 12주 과정 2회차. 피곤하다. 당연하다. 회사 다니면서 배우는 거. 근데 안 하면? 그대로다. 변하지 않는다. 동기는 이직했다. 나도 할 수 있다. 시간 문제. 늦었다고 생각 말자. 4년 차에 시작. 5년 차엔 중급. 10년 차엔? 자동화 테스트 리드. 후배 가르치는 사람. 가능하다. 포기만 안 하면. 스터디장 말이 맞다. 노트북 열고 집 와서 11시. 씻고 침대 누웠다. 노트북 연다. 오늘 배운 거 복습. 30분만. 잠들기 전. 코드 쳐본다. 에러 난다. 고친다. 작동한다. 뿌듯하다. 오늘도 한 발. 내일도 출근. 매뉴얼 테스트. 손으로 터치. 근데 저녁엔 스터디. 또 배운다. 쌓인다. 언젠간 된다. 자동화 QA. 나도 할 수 있다.퇴근 후 스터디. 느리지만 간다. 내년엔 다를 거다.