크롬 확장 프로그램(Chrome Extension) 개발은 편리함을 제공하지만, 테스트 과정은 개발자들에게 큰 부담이었습니다. 팝업(popup), 옵션 페이지(options page), 서비스 워커(service worker) 등 확장 프로그램의 핵심 요소들은 일반적인 웹 페이지와 달리 브라우저 자체의 UI(크롬 크롬) 영역에 속하거나 백그라운드에서 동작하기 때문에, 기존의 브라우저 자동화 도구로는 테스트하기가 매우 어려웠습니다. 매번 수동으로 확장 프로그램을 로드하고, 클릭하고, 여러 개발자 도구(DevTools) 창을 확인하는 반복 작업은 개발 시간을 지연시키고 오류 발생 가능성을 높이는 주범이었습니다.
이러한 문제를 해결하기 위해 '피카보(Pikabo)'라는 새로운 자동화 테스트 도구가 등장했습니다. 피카보는 압축되지 않은(unpacked) 확장 프로그램을 실제 크로미움(Chromium) 브라우저에 로드하고, 확장 프로그램의 모든 부분을 제어하여 테스트를 수행합니다. 특히, 팝업, 옵션 페이지, MV3 서비스 워커, 콘텐츠 스크립트(content script) 등 일반 자동화 도구가 접근하기 어려운 영역까지 테스트할 수 있다는 점이 특징입니다. 피카보는 테스트 실행 후 각 단계의 스크린샷이 포함된 상세 보고서를 생성하여 개발자가 문제점을 쉽게 파악하고 수정할 수 있도록 돕습니다. 초기 설정만으로 매니페스트(manifest.json) 파일을 분석해 기본적인 스모크 테스트(smoke test)를 자동으로 생성하고 실행하는 기능도 제공하여, 수동으로 테스트 코드를 작성할 필요 없이 빠르게 시작할 수 있습니다.
피카보는 단순히 테스트를 실행하는 것을 넘어, 테스트 스크립트 작성 과정도 혁신합니다. '레코딩(recording)' 기능을 통해 사용자가 브라우저에서 확장 프로그램을 사용하는 과정을 녹화하여 YAML 형식의 테스트 스위트(test suite)로 자동 변환해줍니다. 이를 통해 개발자는 초기 테스트 스크립트 작성에 드는 시간을 대폭 절감할 수 있으며, 필요한 경우 수동으로 YAML 파일을 편집하여 더 복잡한 테스트 시나리오를 구성할 수 있습니다. 또한, 기존 플레이라이트(Playwright) 테스트 환경과도 연동이 가능하여, 이미 플레이라이트를 사용하고 있는 개발자들도 쉽게 피카보의 기능을 통합하여 활용할 수 있습니다. 이는 크롬 확장 프로그램 개발 생태계에 큰 변화를 가져와 개발자들이 더 빠르고 안정적으로 고품질의 확장 프로그램을 출시할 수 있도록 지원할 것으로 기대됩니다.