loading...

소프트웨어 테스트 자동화를 위한 생성형 AI의 활용

소프트웨어 테스트 자동화를 위한 생성형 AI의 활용

이 글은 IDG의 아티클을 전재하여 제공합니다.
[원문보기]: https://www.itworld.co.kr/t/69500/AI%E3%86%8DML/321731

생성형 AI가 코딩과 소프트웨어 개발을 가속하는 지금 코드 테스트와 QA는 빠른 속도를 어떻게 따라잡을까?

데브옵스팀의 QA 엔지니어는 테스트 커버리지를 확대하고 자동화 테스트를 늘리고, 코드 개발의 속도 증대를 위해 테스트 데이터 생성 규모를 확대해야 한다. 생성형 AI 기능을 추가하는 테스트 플랫폼을 찾아야 한다.

ⓒ Getty Images Bank

유수의 소프트웨어 테스트 자동화 플랫폼 업체는 이제 생성형 AI 기능을 강화한 제품을 속속 출시하고 있다. 카탈론(Katalaon)의 AI 중심의 테스팅, 트리센티스(Tricentis)의 AI 퀄리티 엔지니어링 솔루션, 람다테스트(LambdaTest)의 테스트 인텔리전스(Test Intelligence), 오픈텍스트(OpenText) UFT One의 AI 테스트 자동화, 스마트베어(SmartBear)의 테스트컴플릿(TestCompelete)과 비주얼테스트(VisualTest) 외에도 많은 AI로 강력해진 소프트웨어 테스트 도구가 있다. 데브옵스 조직과 QA 엔지니어의 임무는 이제 생성형 AI가 테스트 생산성, 커버리지, 위험 완화, 테스트 품질에 미치는 영향을 검증하는 것이다.

코드가 늘어나면 테스트 자동화가 필요하다

맥킨지는 개발자가 생성형 AI로 코드 작업을 2배 더 빨리 완료한다는 연구 결과를 발표했다. 생성되는 코드의 양도 그만큼 늘어날 것이라는 의미다. 즉 QA 엔지니어도 테스트와 코드의 보안 취약점 검증 속도를 높여야 한다.

코파도(Copado)의 제품 관리 수석 부사장 에스코 하눌라는 생성형 AI의 가장 큰 영향은 테스트 분량이 훨씬 늘어난다고 분석했다. 코드가 더 빨리 만들어지고 더 자주 릴리즈되기 때문이다. 테스트에도 동일한 영향이 있다. 생성형 AI는 일반 텍스트 사용자 스토리 또는 테스트 시나리오에서 테스트 정의를 생성하고 실행 가능한 테스트 자동화 스크립트로 변환하는 데 도움이 된다. 인간의 창의력은 아직도 시스템을 망가뜨리는 요소를 파악하는 데 있어 AI보다 우수하다. 그러므로 완전 자동화가 가능하더라도 아직은 가장 선호되는 방법은 아니다.

제품 소유자, 기업 애널리스트, 개발자는 생성형 AI가 효율적인 테스트 자동화 스크립트를 만들어내기 때문에 애자일 사용자 스토리의 품질을 개선해야 한다. 충분한 수용 기준과 업데이트된 코드의 링크로 사용자 스토리를 작성하는 애자일팀은 AI로 생성된 테스트 자동화를 고려해야 한다. 그동안 다른 팀은 요구 사항 수집과 사용자 스토리 작성을 개선해야 할 수도 있다.

생성형 AI가 QA 베스트 프랙티스를 대체하지는 못한다

개발팀은 LLM으로 서비스 레벨 목표(SLO)를 만들고 사고의 근본 원인을 제시하고, 문서나 다른 유용한 생산성 도구를 만든다. 그러나 QA 엔지니어가 자동화로 생산성을 개선하고 테스트 커버리지를 늘리는 한편, 생성형 AI가 기업 수준의 의미 있는 테스트 시나리오를 생성하고 위험을 줄일 수 있을지는 아직 모르는 일이다. 일부 전문가는 무게를 두면서 생성형 AI가 베스트 프랙티스를 늘릴 수는 있지만 대체할 수는 없다는 데 합의하고 있다.

카탈론의 전략 부사장 알렉스 마틴은 QA에 있어서 테스트의 정확도와 예측 가능성이 관건이라고 조언했다. 이는 동일한 프롬프트에도 응답이 변하는 AI가 아직 숙달하지 못한 지점이 있기 때문이다. AI는 테스트 생산성 증대라는 매혹적인 제안을 하지만, 현실에서는 테스터가 테스트를 실행하기보다 LLM 결과를 정제하는 데 상당한 시간을 소비하는 상쇄 효과에 직면한다. AI 도구의 가능성과 현실 간 이분법은 인간의 전문 지식을 포기하지 않고 AI를 활용하는 균형 잡힌 접근 방식이 필요하다.

ⓒ Getty Images Bank

세마포어 CI/CD(Semaphore CI/CD)의 공동 설립자 마르코 아나스타소프는 AI가 개발자 생산성을 끌어올리기는 해도 품질을 평가할 대안이 아니라고 했다. 강력한 테스트 프랙티스와 자동화를 결합했을 때 AI가 높은 품질과 프로덕션 레디 코드를 만들어 낼 것이다.

생성형 AI와 테스트 자동화가 테스트 스크립트를 만드는 데 도움이 될 수 있지만, 무엇을 테스트할지를 아는 재능과 전문 지식을 갖추는 것은 QA 엔지니어에게 더 중요한 일이 될 것이다. 생성형 AI의 테스트 생성 기능이 발전하면서 QA 엔지니어는 테스트 스크립트 코딩이 아니라 시프트 레프트와 위험 완화 및 테스트 전략에 집중해야 한다.

코드 변경 피드백이 더 빨라진다

QA가 더 전략적 위험 완화 기능이 되면서 애자일 개발팀이 생산성과 테스트 커버리지를 넘어 생성형 AI 기능을 찾고 검증하는 곳은 어디일까? 생성형 AI가 결함 등의 코딩 문제를 더 빨리 발견하는지가 중요한 지표다. 개발자는 생성형 AI가 CI/CD 파이프라인을 방해하거나 프로덕션 문제를 일으키기 전에 먼저 해결할 수 있어야 한다.

퍼시스턴트 시스템(Persistent Systems)의 수석 데이터 과학자 다타라즈 라오는 CI/CD 파이프라인과 통합된 생성형 AI는 지속적이고 빠른 테스트를 보장하고, 코드 변경 시 빠른 피드백을 제공한다고 했다. 결점을 확인하고 UI를 분석하며 테스트 스크립트를 자동화하는 능력과 함께 생성형 AI는 소프트웨어 QA의 미래를 형성하는 혁신적 촉매로 변화할 것이다.

생성형 AI를 사용해 더 빠른 피드백을 얻으면 전체 스택 테스트 전략을 구현하지 않은 데브옵스팀에 기회가 생긴다. 예를 들어, 팀은 자동화된 단위 및 API 테스트를 실행할 수 있지만 UI 수준 테스트는 제한적일 수 있고, 오류를 찾기 위한 테스트 데이터가 충분하지 않을 것이다. 데브옵스팀은 테스트 자동화 플랫폼에 결합한 생성형 AI 기능을 검증해 테스트 범위를 확대하고, 피드백을 더 빨리 보내 격차를 줄여야 한다.

ⓒ Getty Images Bank

아메리카 IFS의 CTO 케빈 밀러는 생성형 AI가 자동화와 테스트 데이터, 시나리오, 스크립트 생성, 이상 징후 탐지 등 다양한 테스트 최적화로 지속적 테스트를 혁신했다고 했다. 생성형 AI가 핵심 테스트 과정을 자동화해 지속적 테스트의 속도, 범위, 정확성을 개선했다. 따라서 개발 파이프라인을 통한 소프트웨어 변경의 철저하고 효율적으로 검증할 수 있다.

테스트 시나리오의 견고함 강화

AI는 단지 테스트 사례를 수적으로 늘리고 문제를 더 빨리 찾아내는 것 이상을 할 수 있다. 팀은 생성형 AI로 테스트 시나리오의 효율을 개선해야 한다. AI는 각 테스트 시나리오의 테스트 범위를 확대하고 정확성을 개선해 테스트를 지속적으로 유지하고 발전시켜야 한다.

마스텍(Mastek)의 CTO이자 혁신 책임자 리트위크 바타비알은 생성형 AI가 실시간 애플리케이션 변경에 기반한 테스트 시나리오의 자동으로 발전시키며 적응형 학습을 통해 지속적 테스트에 혁신을 가져왔다고 했다. 지능형 패턴 인식, 다이내믹 파라미터 적응, 취약점 발견 스트림라인 테스트는 수동 개입을 줄이고 주기를 앞당기고 소프트웨어의 견고함을 개선했다. LLM과의 통합으로 섬세한 테스트 시나리오 생성의 맥락을 이해하고, 자동화 정확성과 지속적 테스트의 효율성을 향상하며, 테스트 역량에서의 패러다임 변화를 만들었다.

자연어 쿼리 인터페이스, 프롬프트 및 LLM을 내장한 애플리케이션을 지원하는 테스트 시나리오를 개발하는 것은 QA에 있어 기회이자 과제다. 이러한 신기능이 도입되면서 테스트 자동화는 매개 변수화된 키워드 입력에서 프롬프트로 전환하는 업데이트가 필요하고, 테스트 플랫폼은 LLM 응답의 품질과 정확성을 검증할 수 있어야 한다. LLM 테스트는 새로운 기능이지만, 테스트 시나리오의 범위와 정확도를 개선하는 정확한 데이터를 보유하는 것은 현재의 과제이며 자연어 사용자 인터페이스 검증의 필수 요소다.

SADA 솔루션 엔지니어링 담당 이사 헤더 선드하임은 생성형 AI는 자동 테스트 사례 생성, 동적 스크립트 적응, 버그 탐지 같은 발전을 제공하지만, 성공적으로 구현하려면 기업이 데이터의 무결함과 최적화를 보장하는지에 달려 있다고 했다. 테스트에서 생성형 AI를 도입해 새로운 트렌드의 이점을 완전히 활용하기 위해 데이터 품질 고려 사항을 해결해야 한다. 특히 데브옵스팀은 자연어 인터페이스와 프롬프트를 테스트하기 위해 테스트 양식과 워크플로우의 범위를 확장할 때 합성 데이터를 통한 확장을 고려해야 한다.

생성형 AI는 계속 빠르게 발전할 것

애플리케이션에 자연어 인터페이스를 탑재하거나 코드를 생성하고 테스트 생성을 자동화해 생성형 AI 도구를 테스트하는 데브옵스팀이라면 AI의 역량이 계속 진화할 것임을 인식해야 한다. 가능하다면 데브옵스팀은 생성형 AI 도구를 사용하는 애플리케이션과 플랫폼 간의 인터페이스에 추상화 계층을 만들어야 할 것이다.

런치다클리(LaunchDarkly)의 엔지니어링 수석 부사장 조나단 놀런은 산업의 변화 속도는 아찔할 정도라고 했다. 현재의 최고 도구가 내년에도 최고의 자리에 있지는 않을 것이다. 팀은 소프트웨어를 완전히 새로 작성하지 않고도 모델, 프롬프트 등을 쉽게 교체해 미래 전략을 입증할 수 있다. 테스트 자동화 플랫폼과 정적 코드 분석 도구가 AI가 만든 코드를 테스트하는 능력도 향상될 것으로 예상된다.

포어소트(Forethought)의 CTO이자 공동 설립자 새미 고크는 생성형 AI는 지속적 자동화 테스트에 심오하고 다면적인 영향을 미칠 것이며, 코파일럿과 코드 생성기가 만든 코드를 테스트하고 평가하며, LLM을 개발하는 임베딩 및 기타 작업을 테스트하는 데 매우 중요하다고 했다.

생성형 AI는 과대 광고와 기대, 영향력 있는 비즈니스 결과의 한가운데에 있다. 이제 QA는 기능을 검증하고 위험을 줄이며, 기술이 정의된 품질 표준 안에서 변경을 보장해야 한다.




IDG logo

▶   해당 콘텐츠는 저작권법에 의하여 보호받는 저작물로 기고자에게 저작권이 있습니다.
▶   해당 콘텐츠는 사전 동의 없이 2차 가공 및 영리적인 이용을 금하고 있습니다.


이 글이 좋으셨다면 구독&좋아요

여러분의 “구독”과 “좋아요”는
저자에게 큰 힘이 됩니다.

subscribe

구독하기

subscribe

Isaac Sacolick
Isaac Sacolick

StarCIO의 Founder 겸 InfoWorld의 Contributing Editor

애자일, 데브옵스, 데이터 과학을 다룬 ‘Driving Digital: The Leader’s Guide to Business Transformation through Technology’의 저자

공유하기