본문으로 건너뛰기

© 2026 Molayo

arXiv논문2026. 06. 25. 11:23

IntentTester: 교차 라이브러리 테스트 마이그레이션을 위한 의도 기반 멀티 에이전트 프레임워크

요약

IntentTester는 테스트의 의도를 추출하여 언어에 구애받지 않는 기술 언어로 추상화하는 멀티 에이전트 프레임워크입니다. 기존의 구조적 매핑 방식과 달리 의미론적 정렬을 통해 교차 라이브러리 및 교차 언어 간의 실행 가능한 테스트 마이그레이션을 지원합니다.

핵심 포인트

  • 의도 기반(Intent-driven) 테스트 재사용을 위한 멀티 에이전트 프레임워크 제안
  • 테스트를 TDL(Test Description Language)로 추상화하여 언어 종속성 해결
  • LLM 가이드 추론과 반복 검증을 통한 실행 가능한 테스트 합성
  • 기존 방식 대비 높은 정확도(85%) 및 유효성(74%) 달성
  • 마이그레이션 과정에서 실제 소프트웨어 결함 발견 및 패치 기여

단위 테스트 (Unit tests)는 기능적 점검과 도메인 특화 지식을 모두 담고 있지만, 이러한 지식은 개별 프로젝트 내에 갇혀 있으며 기능이 중복되는 라이브러리 간에는 거의 재사용되지 않습니다. 구조적 코드 매핑 (예: API 시그니처)에 기반한 기존의 마이그레이션 기술은 설계의 차이나 교차 언어 (cross-language) 설정 하에서 종종 실패하며, 그 결과 실행 불가능한 마이그레이션된 테스트를 생성합니다. 본 논문에서는 의도 기반 (intent-driven) 테스트 재사용을 위한 멀티 에이전트 프레임워크인 IntentTester를 제안합니다. IntentTester는 원시 코드를 번역하는 대신, 테스트를 언어에 구애받지 않는 테스트 기술 언어 (Test Description Language, TDL)로 추상화하고, 이를 저장소 그래프 (repository graph) 내의 의미론적으로 관련된 엔티티 및 의존성과 정렬하며, LLM 가이드 추론 및 반복적인 검증을 통해 실행 가능한 테스트를 합성합니다. 이러한 설계는 수동 개입 없이도 교차 라이브러리 및 교차 언어 마이그레이션을 가능하게 하며, 기존의 구조 매핑 방식으로는 달성할 수 없는 마이그레이션된 테스트를 생성합니다. 우리는 세 가지 도메인 (JSON, HTML, Time)과 두 가지 언어 (Java, Python)에 걸친 9개의 오픈 소스 프로젝트에서 IntentTester를 평가했습니다. IntentTester는 85%의 정확도로 2,776개의 구문적으로 올바른 테스트를 생성했습니다. 이에 반해 두 가지 베이스라인 (baselines)은 각각 51%와 43%를 달성했습니다. 이 중 2,410개의 테스트가 성공적으로 실행되어 74%의 유효성 (effectiveness) 비율을 기록했습니다. 더 높은 성공률 외에도, IntentTester는 스택 오버플로 (stack overflows), 널 역참조 (null dereferences), 파싱 불일치 (parsing inconsistencies)를 포함하여 이전에 알려지지 않았던 결함들을 발견했으며, 이 중 여러 개는 유지 관리자 (maintainers)에 의해 인정되거나 패치되었습니다. 우리의 결과는 의도 기반 마이그레이션이 초점을 코드 매핑에서 의미론적 정렬 (semantic alignment)로 전환하여, 테스트 품질을 향상시키고 구현 결함을 노출하는 동시에 실질적인 교차 라이브러리 및 교차 언어 테스트 재사용을 가능하게 함을 보여줍니다.

AI 자동 생성 콘텐츠

본 콘텐츠는 arXiv Codex (cs.SE)의 원문을 AI가 자동으로 요약·번역·분석한 것입니다. 원 저작권은 원저작자에게 있으며, 정확한 내용은 반드시 원문을 확인해 주세요.

원문 바로가기
0

댓글

0