Skip to content
hello tis
Go back

[26.09.28] 챌린지 API의 QA 대응을 위한 테스트 도구와 수정 자동화 구성하기

QA 엔지니어가 테스트하는 환경과, 발견된 문제를 내가 처리하는 과정을 개선했습니다. QA 엔지니어에게는 필요한 상황을 쉽게 구성할 수 있는 출석판을 제공하고, 내 업무에서는 일감 할당부터 테스트와 PR 생성까지 이어지는 과정을 자동화했습니다.

출석 이력을 직접 바꾸며 QA하기 위한 개발용 출석판 만들기

출석 리워드 QA에서는 출석 이력과 리워드 상태를 조합해 여러 상황을 확인해야 했습니다. QA 엔지니어가 테스트에 필요한 상태를 직접 준비하고 결과를 확인할 수 있도록 개발용 출석판을 만들었습니다.

출석판에서 출석 이력을 구성하고, 리워드 획득과 연장 전후의 상태를 비교할 수 있도록 했습니다.

리워드 획득 전
리워드 획득 전: 완주분 수령 가능, 광고 제거 미적용.
리워드 획득 후
리워드 획득 후: 수령 표시와 광고 제거 적용 구간.
리워드 연장 전
리워드 연장 전: 출석 6일, 기존 광고 제거 적용 기간.
리워드 연장 후
리워드 연장 후: 출석 7일, 늘어난 광고 제거 적용 기간.

Jira 일감의 테스트 작성부터 PR 생성까지 자동화

내게 할당된 QA 일감은 문제를 검증할 테스트를 작성하고, 코드를 수정한 뒤 PR로 검토하는 과정을 거쳤습니다. 이 과정의 반복 작업을 줄이기 위해 Jira 일감 할당을 시작점으로 자동화를 구성했습니다.

Jira 웹훅을 받아 특정 에픽에 속한 일감이 나에게 할당되면 AI가 작업을 시작하도록 했습니다. 일감 내용에 맞는 테스트 코드를 작성하고, 테스트가 통과할 때까지 코드 수정과 테스트 실행을 반복했습니다. 통과하면 PR을 생성하고 웹훅으로 완료를 알렸습니다.

Jira 웹훅으로 작업 조건을 확인하고, 테스트 작성과 코드 수정을 거쳐 테스트가 통과하면 PR 생성과 완료 알림으로 이어지는 순서도.

자동으로 생성된 PR도 수정 의도와 결과를 쉽게 검토할 수 있어야 했습니다. PR 작성 방법을 템플릿으로 정리해 변경 이유와 내용, API 변경 여부, 테스트 결과를 담도록 했습니다. 출석 상태는 아래 표기로 변경 전후를 비교하도록 했습니다.

[V][V][V][V][V][T][ ]

V는 직접 출석, T는 출석권 사용, 빈칸은 미출석을 뜻합니다.

변경 이유와 내용, API 변경 여부를 정리하고 출석 상태를 문자로 비교한 PR 작성 예시.

QA 세 건을 처리하며 돌아본 자동화 비용과 검토 부담

초기부터 경계값을 기준으로 테스트를 진행해 QA에서 발견된 이슈가 많지는 않았습니다. 내게 할당된 QA 작업은 세 건이었고, 세 건 모두 수정 사항을 정상적으로 적용했습니다. 경계값 테스트를 설계하고 이후 QA에서 확인한 조건을 보강한 과정은 아래 낙서장에 정리했습니다.

처리할 QA 작업이 많지 않았던 만큼, 이번에는 실제 QA 작업보다 내 업무를 자동화하는 데 들인 작업이 더 많았습니다. 최종 코드 검토에 든 시간까지 고려하면 전체 작업 시간을 충분히 줄였다고 느끼기는 어려웠습니다.

AI가 하지 말라고 명시한 지시를 어기는 경우도 있었습니다. 테스트가 통과하더라도 의도한 범위 안에서 수정했는지는 직접 검토해야 했습니다. 테스트 작성부터 PR 생성까지 연결했지만, 최종 검토까지 맡기는 완전한 자동화에는 아직 한계가 있다고 느꼈습니다.


Share this post:

Previous Post
[26.09.29] 학습: 트랜잭션 유무별 조회와 이벤트 리스너 동작 확인하기
Next Post
[26.09.25] Fluent Bit 설정과 로그 유실 대응 고민하기