4. AI·LLM 테스트/AI test

집에 들어서기 전 이미 집안일은 끝나 있다, 소프트웨어 테스트 엔지니어의 하루도 그렇게 바뀌고 있다

testmanager 2026. 6. 8. 07:00
반응형

퇴근길에 스마트폰 하나로 청소기를 돌리고 냉방을 켜두는 일이 더 이상 낯설지 않은 것처럼, 소프트웨어 테스트의 세계도 같은 방향으로 빠르게 이동 중이다.

 

누군가는 이미 그 흐름 안에 있고, 누군가는 아직 모르고 있다.

 

 


집에 도착했을 때 이미 모든 게 준비되어 있다는 것

 

주차장에 차를 세우면 엘리베이터가 자동으로 호출된다.

 

현관문을 열면 로봇 청소기는 이미 제 자리로 돌아가 있고, 스타일러는 외투를 받을 준비가 되어 있다.

 

광파오븐은 예약된 시간에 맞춰 돌아가고 있고, 드럼 세탁기는 탈수를 막 마쳤다.

 

이 모든 일이 가능해진 건 기술이 집안일의 '실행'을 대신 맡아줬기 때문이다.

 

우리는 판단만 했다.

 

언제 청소할지, 몇 도로 설정할지, 어떤 코스로 세탁할지. 그 판단을 스마트폰으로 내려두면, 귀가하는 순간 이미 집은 정돈되어 있다.

 

소프트웨어 테스트 엔지니어링의 세계도 지금 그 변화의 한가운데를 지나고 있다.


퇴근 전 로봇 청소기를 돌리는 것처럼, 요구사항 분석도 미리 돌아간다

 

집에 오기 전 로봇 청소기를 앱으로 가동하는 행위는 단순해 보이지만, 그 안에는 꽤 정교한 판단이 들어있다.

 

오늘 바닥 상태가 어떤지, 어느 방을 우선으로 청소할지, 배터리가 충분한지를 기기가 스스로 파악하고 경로를 설계한다.

 

테스트 엔지니어링에서 요구사항 분석과 테스트 계획도 비슷한 방식으로 자동화되고 있다.

 

개발 티켓과 코드 변경 내역을 AI가 읽고, 어떤 기능이 영향을 받는지를 스스로 추론한다.

 

QA가 매번 스펙 문서를 처음부터 읽으며 영향 범위를 파악하던 시간이 줄어들기 시작했다.

 

청소기가 가구 배치를 인식하듯, AI는 코드 구조를 인식하고 어디부터 검증해야 할지 제안한다.


냉난방을 미리 켜두는 것처럼, 테스트 케이스는 배포 전에 이미 설계되어 있다

 

스마트폰으로 집 안 에어컨을 미리 켜두는 행위는 작은 것 같지만, 귀가 시점을 역산해 온도와 시간을 조율하는 논리가 들어간다.

 

도착했을 때 쾌적한 환경이 되어있는 것, 그게 목적이다.

 

tcgen이나 pr-checkmate 같은 도구들이 하는 일이 이것과 닮아 있다.

 

PR이 올라오는 순간 코드 변경 맥락을 읽고, 어떤 시나리오를 검증해야 하는지 테스트 케이스 초안을 자동 생성한다.

 

QA 엔지니어가 배포 직전에 허겁지겁 케이스를 작성하는 것이 아니라, 개발이 진행되는 동안 이미 검증 준비가 함께 갖춰지는 구조다.

 

집에 도착했을 때 이미 시원한 것처럼, 배포 시점에 이미 테스트 설계가 완료되어 있다.


세탁기가 스스로 코스를 바꾸는 것처럼, Self-healing 자동화는 환경 변화를 스스로 흡수한다

 

드럼 세탁기의 AI 코스 기능은 세탁물의 무게와 소재를 감지해 물 온도와 회전 속도를 자동으로 조정한다.

 

면 소재인지 울인지, 무거운지 가벼운지를 사람이 일일이 설정하지 않아도 된다.

 

기기가 상황을 읽고 스스로 최적 경로를 찾는다.

 

Self-healing 자동화가 하는 일이 정확히 이것이다.

 

UI가 변경되어 버튼 위치가 달라지거나 ID가 바뀌었을 때, 기존 자동화 스크립트는 그 자리에서 실패했다.

 

사람이 직접 찾아들어가 셀렉터를 수정하고 다시 실행해야 했다.

 

Self-healing 자동화는 변경된 UI를 스스로 감지하고 셀렉터를 재탐색해 테스트가 깨지지 않도록 스스로 복구한다.

 

세탁물이 바뀌어도 세탁기가 알아서 코스를 조정하듯, 제품이 바뀌어도 테스트가 스스로 적응한다.


광파오븐이 눌음 냄새를 감지하듯, Flaky 테스트 감지는 신뢰할 수 없는 신호를 잡아낸다

 

광파오븐이나 에어프라이어에는 온도 센서가 있어서, 음식이 의도치 않게 과열되거나 눌기 시작하면 알림이 온다.

 

정상적인 조리 중에 생긴 이상 신호를 감지하는 것이다.

 

Flaky 테스트는 소프트웨어 테스트 환경의 '냄새 나는 신호'와 같다.

 

같은 테스트를 돌렸는데 어떤 날은 통과하고 어떤 날은 실패한다. 코드가 바뀐 것도 아닌데 결과가 달라진다.

 

이런 불안정한 테스트는 QA 팀의 신뢰도를 갉아먹는다. 실패 알림이 와도 "또 Flaky겠지"라며 넘기게 만든다.

 

Flaky 테스트 감지 기술은 수백 번의 실행 이력을 분석해 어떤 테스트가 비정상적으로 불안정한지를 자동으로 분류한다.

 

광파오븐이 정상적인 조리 열과 과열 신호를 구분하듯, 진짜 버그와 환경 문제로 인한 노이즈를 구분해낸다.

 

그 덕분에 QA 엔지니어는 진짜 중요한 실패에만 집중할 수 있게 된다.


엘리베이터가 주차층을 인식하듯, 테스트 영향도 분석은 어디부터 탈 것인지를 먼저 알고 있다

 

자동 엘리베이터 호출은 단순히 편리한 기능이 아니다.

 

내가 지하 2층에 주차했다는 것을 시스템이 인식하고, 그 층에서 엘리베이터를 대기시킨다.

 

전체 층을 다 확인할 필요 없이, 관련 있는 층에만 반응하는 것이다.

 

테스트 영향도 분석(Test Impact Analysis)이 하는 역할이 바로 이것이다.

 

코드 변경이 발생했을 때 전체 테스트를 처음부터 끝까지 다 돌리는 것이 아니라, 변경된 코드와 연관된 테스트만 선별해 실행한다.

 

10만 개의 테스트 케이스 중에서 이번 변경과 실제로 연결된 3백 개만 골라 돌리는 것이다.

 

시간이 줄고, 파이프라인이 빨라지고, 피드백이 빨라진다.

 

엘리베이터가 모든 층을 순서대로 돌지 않듯, 테스트도 이제 필요한 곳만 정확하게 다녀온다.


스타일러가 외투를 돌보는 동안 우리는 다른 일을 한다

 

스타일러의 역할은 단순히 옷을 관리하는 것이 아니다.

 

귀가 후 다음 날을 준비하는 시간을 돌려준다.

 

외투를 손으로 털고 습기를 제거하는 20분이 사라지면, 그 시간에 다른 무언가를 할 수 있다.

 

자동 결과 리포팅과 성능 테스트, 보안 취약점 스캔이 자동화된 환경에서 QA 엔지니어에게 돌아오는 것도 같은 종류의 시간이다.

 

수백 개의 테스트 결과를 수동으로 취합해 보고서를 작성하던 시간, 로그를 뒤지며 실패 원인을 하나하나 추적하던 시간이 줄어들면

— 그 자리에 품질 전략을 고민하고, 더 나은 테스트 설계를 실험하는 일이 들어온다.

 

집안일이 자동화될수록 우리가 집에서 더 잘 쉬고 더 잘 생각할 수 있게 되는 것처럼, 테스트가 자동화될수록 QA 엔지니어는 더 본질적인 질문에 시간을 쓸 수 있게 된다.

 

이 소프트웨어, 지금 정말 쓸 만한가?

 

사용자는 어디서 막히는가?

 

우리가 놓치고 있는 품질의 정의는 무엇인가.

 

기계가 집안일을 맡아가는 시대에, 사람의 역할이 더 '사람다운' 판단으로 옮겨가듯이.


 

반응형