피드로 돌아가기
Dev.toDevOps
원문 읽기
Selenium 기반 Pixel-by-Pixel 비교를 통한 Power BI Silent Regression 자동 탐지
Power BI Visual Monitoring: Automatically Detecting Broken Visuals in Power BI Reports
AI 요약
Context
데이터 소스 변경이나 권한 수정으로 인한 시각적 깨짐 현상이 시스템 에러 없이 발생하는 Silent Regression 문제 직면. 기존 Usage Metrics 및 Performance Analyzer는 사용량과 로딩 속도만 측정할 뿐 실제 렌더링 결과의 정합성을 검증하지 못하는 한계 존재.
Technical Solution
- Selenium WebDriver 기반 Headless Chrome을 활용하여 Power BI Service 및 Report Server의 특정 URL 페이지 자동 캡처 구조 설계
- 기준 이미지(Baseline)와 현재 스크린샷을 Pixel-by-pixel 알고리즘으로 비교하여 시각적 차이점 추출
- Anti-aliasing 및 미세한 텍스트 변화로 인한 False Positive를 억제하기 위한 Heuristics 기반 임계값(Threshold) 설정 로직 적용
- OpenCV 및 Pillow 라이브러리를 활용한 Diff 이미지 생성 및 변경 픽셀 비율 계산 프로세스 구현
- Docker 컨테이너 기반의 독립적 실행 환경 구축을 통한 DevOps 파이프라인 및 스케줄러 통합 설계
실천 포인트
- UI/UX 기반 데이터 시각화 도구 도입 시 시스템 로그 외에 Visual Regression Testing 체계 검토 - Headless Browser 기반의 자동화 캡처 도구와 OpenCV를 결합한 정합성 검증 파이프라인 구축 고려 - 픽셀 단위 비교 시 발생하는 노이즈 해결을 위한 적절한 Sensitivity Threshold 설정값 튜닝 필요