브라우저 테스트는 현대 웹 개발에서 필수적이지만, 느리고 불안정하다는 고질적인 문제에 시달려왔습니다. 이러한 문제를 해결하기 위해, 인기 있는 Go 언어 테스트 프레임워크 Ginkgo와 Gomega의 개발자인 Onsi Fakhouri가 새로운 브라우저 테스트 라이브러리 Biloba를 선보였습니다. Biloba는 크롬(Chrome) 기반으로 Go(Ginkgo)와 TypeScript(Vitest) 환경에서 빠르고 안정적인 브라우저 테스트 및 자동화를 지원합니다.
Biloba는 기존의 Playwright 같은 도구보다 2~3배 빠른 속도를 자랑하며, 특히 병렬 처리에 최적화되어 있습니다. 이는 테스트 실행 시간을 크게 단축시키는 핵심 요소입니다. 안정성을 위해 Biloba는 '실용주의적 원자 자바스크립트(pragmatic atomic Javascript)' 접근 방식을 채택합니다. 예를 들어, `b.Click("#foo")`와 같은 명령은 실제 사용자 행동을 시뮬레이션하기보다 `foo.click()`과 같이 직접적인 자바스크립트 호출을 통해 빠르게 작업을 수행합니다. 이는 테스트의 현실성을 일부 희생하는 대신 속도와 안정성을 얻는 방식입니다. 하지만 필요한 경우 `b.Realistic().Click("#foo")`처럼 실제 스크롤 및 포인터 이벤트 발생을 통한 현실적인 상호작용도 쉽게 구현할 수 있도록 유연성을 제공합니다.
이러한 접근 방식은 개발자들이 브라우저 테스트의 고질적인 문제인 '느리고 불안정한 테스트'에서 벗어나게 해줍니다. 특히 AI 도구 체인과의 연동을 염두에 두고 설계되어, 향후 AI 기반 테스트 자동화 환경에서도 강력한 시너지를 낼 것으로 기대됩니다. Biloba는 현재 활발히 개발 중이며, 1.0 정식 릴리스 전까지는 API 변경 가능성이 있지만, 이미 상당한 기능을 갖추고 있어 개발자들에게 큰 도움이 될 것입니다. 이는 복잡한 웹 애플리케이션의 품질을 보장하고 개발 주기를 단축하는 데 기여할 중요한 도구가 될 것입니다.