99가지 필수 AI 테스팅 면접 질문 및 답변 (2026년 에디션)
요약
QA 엔지니어와 SDET를 위한 2026년 최신 AI 테스팅 가이드입니다. 전통적인 소프트웨어 테스팅과 달리 확률적 특성을 가진 AI 시스템을 검증하기 위한 데이터, 모델, RAG, 에이전트 테스팅 방법론을 다룹니다.
핵심 포인트
- AI 테스팅은 결정론적 방식에서 통계적 검증 방식으로 전환됨
- 테스트 오라클 문제 해결을 위한 메타모픽 테스팅 활용
- LLM, RAG, 에이전트형 워크플로우를 위한 특화된 평가 필요
- 데이터 품질, 모델 강건성, 보안 및 레드팀 테스팅의 중요성
QA 엔지니어, SDET, ML/AI 테스트 엔지니어 및 채용 담당자를 위한 포괄적이고 최신화된 참고 자료입니다. 클래식 ML 테스팅, LLM/GenAI 평가, RAG 시스템, 에이전트형 AI (Agentic AI), 편향 및 안전성 테스팅, MLOps 파이프라인, 그리고 현재(2026년)의 툴링 환경을 다룹니다.
목차
- AI/ML 테스팅의 기초
- 데이터 품질 및 데이터 테스팅
- 모델 테스팅 및 검증
- 메트릭 (Metrics) 및 평가
- LLM 및 생성형 AI (Generative AI) 테스팅
- 프롬프트 엔지니어링 (Prompt Engineering) 및 프롬프트 테스팅
- RAG (Retrieval-Augmented Generation) 테스팅
- AI 에이전트 및 에이전트형 워크플로우 (Agentic Workflow) 테스팅
- 편향, 공정성, 안전성 및 책임감 있는 AI (Responsible AI)
- 적대적 공격 (Adversarial), 보안 및 레드팀 (Red-Teaming)
- MLOps, CI/CD 및 테스트 자동화
- 성능, 확장성 및 모니터링
- 도구 및 프레임워크 (2026년 현황)
- 행동 및 시나리오 기반 질문
- 추가 리소스
1. AI/ML 테스팅의 기초
1. AI 시스템을 테스팅하는 것은 전통적인 소프트웨어를 테스팅하는 것과 어떻게 다른가요?
전통적인 소프트웨어는 명시적인 로직에 의해 정의된 결정론적 (Deterministic) 입출력 매핑을 가지므로, 고정된 테스트 오라클 (Test Oracle, 예상 출력)이 일반적으로 존재합니다. 반면 AI 시스템 — 특히 ML 모델과 LLM — 은 확률적 (Probabilistic)이며 데이터로부터 학습되고, 동일한 입력에 대해 서로 다른 (때로는 비결정론적인) 출력을 생성할 수 있습니다. 따라서 AI 테스팅은 "출력 X가 예상되는 Y와 정확히 일치하는가"에서 통계적 검증으로 전환됩니다. 즉, '정답'인 동작이 코드로 작성된 것이 아니라 학습된 것이기 때문에 정확도 임계값, 분포 확인 (Distributional checks), 행동/불변성 테스팅 (Behavioral/Invariant testing), 그리고 드리프트 (Drift)에 대한 지속적인 모니터링이 중요합니다.
2. AI 테스팅의 주요 카테고리는 무엇인가요?
데이터 테스팅 (품질, 편향, 누수), 모델 테스팅 (정확도, 강건성, 공정성), 통합 테스팅 (모델 + 애플리케이션), 행동 테스팅 (불변성, 방향성 기대치, 최소 기능), 비기능 테스팅 (지연 시간, 처리량, 비용, 보안), 그리고 생성형 시스템의 경우 출력 품질/안전성 평가 (환각 (Hallucination), 독성, 사실성)가 있습니다.
3. AI 테스팅에서 "테스트 오라클 문제 (test oracle problem)"란 무엇이며, 이를 어떻게 해결합니까?
정답 (ground truth) 자체가 불확실하거나 얻기 비용이 많이 들 때, 주어진 입력에 대한 "정확한" 출력을 알기 어려운 문제를 의미합니다. 해결 방법으로는 다음과 같은 접근 방식이 있습니다: 메타모픽 테스팅 (metamorphic testing, 정확한 값 대신 출력 간의 관계를 확인), 사람이 라벨링한 골드 셋 (gold sets) 사용, 더 강력한 참조 모델 (reference model)과의 교차 참조, 통계적/임계값 기반 수락 (statistical/threshold-based acceptance), 그리고 여러 평가자 간의 합의/다수결 투표 (consensus/majority voting) 등이 있습니다.
4. 메타모픽 테스팅 (metamorphic testing)이란 무엇이며, 왜 ML/AI에 유용합니까?
메타모픽 테스팅은 단일 정답 (ground truth)이 필요한 대신, 여러 연관된 입력과 그에 따른 예상 출력 사이의 관계 ("메타모픽 관계 (metamorphic relations)")를 정의합니다. 예를 들어, 이미지를 약간 회전시키더라도 분류기 (classifier)의 예측은 동일하게 유지되어야 하며, 신용 모델 (credit model)에서 대출 신청자의 소득을 높였을 때 승인 확률이 감소해서는 안 됩니다. 이는 오라클 (oracle)이 존재하지 않을 때 특히 유용합니다.
5. AI/ML 맥락에서 검증 (verification)과 타당성 확인 (validation)의 차이점은 무엇입니까?
검증 (Verification)은 "우리가 모델을 올바르게 구축했는가?"를 묻습니다 (코드 정확성, 파이프라인 정확성, 재현성). 타당성 확인 (Validation)은 "우리가 올바른 모델을 구축했는가?"를 묻습니다 (비즈니스 문제를 해결하는가, 실제 데이터에 일반화되는가, 수락 기준을 충족하는가).
6. 모델 드리프트 (model drift)란 무엇이며, 어떤 유형이 있습니까?
모델 드리프트 (model drift)는 현실 세계가 학습 가정 (training assumptions)에서 벗어남에 따라 시간이 흐르면서 모델의 성능이 저하되는 현상입니다. 주요 유형은 다음과 같습니다: 데이터 드리프트 (data drift) (입력 피처 분포의 변화), 컨셉 드리프트 (concept drift) (입력과 타겟 사이의 관계 변화), 라벨 드리프트 (label drift) (타겟 변수의 분포 변화), 그리고 업스트림 데이터 드리프트 (upstream data drift) (모델에 공급되는 데이터 파이프라인/스키마의 변화).
7. 훈련(training), 검증(validation), 테스트(test) 세트의 차이점은 무엇이며, 테스트 세트 오염(test-set contamination)이 왜 중요한가요?
훈련 데이터는 모델 파라미터(parameters)를 맞추는 데 사용됩니다. 검증 데이터는 하이퍼파라미터(hyperparameters)를 조정하고 모델 선택을 유도하며, 테스트 세트는 편향되지 않은 최종 성능 추정치를 제공하며 결코 훈련 결정에 영향을 미쳐서는 안 됩니다. 오염(테스트 데이터가 훈련에 유출되는 현상으로, 웹 스크래핑된 LLM 사전 학습 코퍼스에서 흔히 발생)은 보고된 성능을 부풀리며, 이는 2026년 벤치마크 신뢰성에 있어 주요한 우려 사항입니다.
8. AI 테스팅에 적용되는 "시프트 레프트 (shift-left)" 원칙이란 무엇인가요?
완성된 모델을 출시 직전에만 평가하는 대신, 라이프사이클의 더 앞 단계로 품질 검사를 이동시키는 것을 의미합니다. 즉, 훈련 전에 데이터 스키마(data schemas)와 라벨 품질을 검증하고, 피처 엔지니어링(feature engineering) 코드를 유닛 테스트(unit-testing)하며, 데이터/모델 변경과 동일한 PR 파이프라인에서 가벼운 모델 건전성 검사(sanity checks)를 실행하는 것입니다.
9. 왜 전통적인 코드 커버리지(code coverage) 지표를 ML 모델에 직접 적용할 수 없나요?
코드 커버리지는 어떤 코드 라인이 실행되는지를 측정하지만, 모델의 "로직 (logic)"은 코드의 분기(branches)가 아닌 학습된 가중치(weights)에 존재하기 때문입니다. 대신 ML 테스팅에서는 대략적인 유사 개념으로 데이터 커버리지 (data coverage, 모든 관련 입력 영역/슬라이스가 표현되었는지), 행동 커버리지 (behavioral coverage, 모든 예상 행동이 테스트되었는지), 그리고 뉴런/활성화 커버리지 (neuron/activation coverage, 일부 딥러닝 테스트 연구에서 사용됨)와 같은 개념을 사용합니다.
10. ML 테스팅에서 CACE 원칙 ("Changing Anything Changes Everything")이란 무엇인가요?
ML 모델은 밀접하게 결합된 통계적 시스템이기 때문에, 하나의 입력 피처(feature), 하나의 하이퍼파라미터, 또는 데이터 순서 하나를 바꾸는 것만으로도 관련 없는 구성 요소들이 예상하지 못한 방식으로 모델의 동작을 변화시킬 수 있습니다. 이는 변경 사항이 보통 국소적으로 제한되는 모듈형 소프트웨어와는 다릅니다. 이로 인해 변경된 구성 요소에 대한 유닛 테스트뿐만 아니라, 모든 변경 후 전체 파이프라인에 대한 회귀 테스트(regression testing)가 필요하게 됩니다.
2. 데이터 품질 및 데이터 테스팅 (Data Quality & Data Testing)
11. 학습 전 테스트해야 할 데이터 품질 (Data Quality)의 주요 차원은 무엇인가요?
완전성 (Completeness, 결측치), 정확성 (Accuracy, 진실의 원천(Source of Truth) 대비 정확도), 일관성 (Consistency, 모순되는 레코드 없음), 유일성 (Uniqueness, 중복 없음), 최신성 (Timeliness, 신선도), 그리고 유효성 (Validity, 스키마/형식/범위 제약 조건 준수)입니다.
12. 데이터 누수 (Data Leakage)를 어떻게 테스트하나요?
훈련/테스트 세트 간의 중복 (정확히 일치하거나 거의 중복되는 행), 미래 정보를 사용하여 계산된 타겟의 프록시(Proxy) 역할을 하는 피처 (시계열 누수 (Temporal Leakage)), 그리고 부적절한 전처리 (예: 훈련/테스트 분할 전 전체 데이터셋의 통계치를 사용하여 스케일링/결측치 보간 (Imputing) 수행)를 확인합니다. 자동화된 누수 탐지기 (Automated leakage detectors)는 피처 중요도 (Feature importance)의 급증과 비정상적으로 높은 훈련/테스트 상관관계 (Correlation)를 비교합니다.
13. 클래스 불균형 (Class Imbalance)을 어떻게 테스트하며, 왜 중요한가요?
클래스 분포를 계산하고 임계값(예: 소수 클래스 < 5%)과 비교합니다. 불균형은 모델이 다수 클래스에 최적화되게 만드는 반면, 소수 클래스에 대한 재현율 (Recall)은 낮게 만들 수 있습니다. 이는 소수 클래스가 중요한 경우 (사기 탐지, 질병 진단 등) 매우 치명적입니다. 테스트에는 층화 추출 (Stratified sampling) 검증과 단순히 전체 정확도 (Aggregate accuracy)가 아닌 클래스별 지표 (Per-class metrics) 확인이 포함됩니다.
14. 데이터 스키마/계약 테스트 (Data Schema/Contract Test)란 무엇이며, 왜 현대적인 데이터 파이프라인에 필요한가요?
스키마 테스트는 유입되는 데이터가 합의된 계약(Contract) — 컬럼 이름, 타입, 범위, Null 허용 여부, 범주형 값 집합 — 과 일치하는지 검증합니다. 2026년의 데이터 메시 (Data-mesh) 및 스트리밍 아키텍처에서, 파이프라인 경계에서의 계약 테스트 (예: Great Expectations, Pandera, 또는 dbt 테스트를 통한 테스트)는 상류 (Upstream) 데이터의 조용한 오류가 모델 학습이나 추론 (Inference)을 오염시키는 것을 방지합니다.
15. 학습 데이터의 편향 (Bias)을 어떻게 테스트하나요?
보호/민감 속성(연령, 성별, 인종, 지리적 위치) 전반의 표현력 (Representation)을 분석하고, 어노테이터 (Annotator) 편향에 따른 레이블 (Label) 품질을 점검하며, 하위 그룹 간의 통계적 패리티 (Statistical Parity)를 계산합니다. 또한, 학습이 시작되기 전에 불균형을 드러내기 위해 Fairlearn, AIF360 또는 What-If Tool과 같은 도구를 사용합니다.
16. 합성 데이터 (Synthetic Data) 테스팅이란 무엇이며, 그 위험 요소는 무엇인가요?
합성 데이터는 개인정보 보호 또는 데이터 부족 문제를 해결하기 위해 (종종 다른 모델에 의해) 생성된 데이터로, 실제 데이터를 증강하거나 대체하는 데 사용됩니다. 테스팅 시에는 통계적 충실도 (Statistical Fidelity, 실제 데이터 분포와 일치하는지), 유용성 (Utility, 해당 데이터로 학습된 모델이 실제 테스트 데이터에서 유사한 성능을 보이는지), 그리고 개인정보 유출 (Privacy Leakage, 실제 기록이 재식별되거나 암기될 수 있는지)을 검증해야 합니다. 2026년의 주요 위험 요소는 합성/AI 생성 데이터로 반복 학습할 때 발생하는 "모델 붕괴 (Model Collapse)"로, 세대를 거듭하며 다양성이 저하되는 현상을 의미합니다.
17. LLM 사전 학습 (Pretraining) 또는 미세 조정 (Fine-tuning) 코퍼스 (Corpora)에 사용되는 데이터 파이프라인을 어떻게 테스트하나요?
중복 제거 (Deduplication)의 효과성, 개인정보 (PII)/유해 콘텐츠 필터링, 라이선스/저작권 준수 스캐닝, 언어 식별 정확도, 토큰화 (Tokenization)의 정확성, 그리고 벤치마크 오염 (Benchmark Contamination) 체크 (평가 세트가 학습 데이터에 포함되지 않도록 보장)를 검증합니다.
18. 피처 스토어 (Feature Store) 테스팅이란 무엇인가요?
오프라인에서 계산된 피처 값 (배치, 학습용)이 온라인에서 계산된 값 (실시간, 추론용)과 일치하는지 테스트하는 것으로, "학습-서빙 왜곡 (Training-serving Skew)" 문제를 다룹니다. 여기에는 시점 정확성 (Point-in-time correctness, 미래 데이터 누출 방지)과 온라인 피처에 대한 최신성 (Freshness) SLA가 포함됩니다.
19. 데이터 버전 관리 (Versioning) 및 계보 (Lineage)를 어떻게 테스트하나요?
각 모델 아티팩트 (Artifact)가 정확한 데이터셋 버전/해시 값으로 추적 가능한지 확인하고 (DVC, LakeFS 또는 Delta Lake Time Travel과 같은 도구 사용), 계보 메타데이터가 적용된 변환 과정을 올바르게 반영하여 재현성 (Reproducibility) 및 감사/롤백 (Audit/Rollback)이 가능하도록 검증합니다.
20. 입력 데이터가 모델에 도달하기 전에 이상치(Outliers)와 이상 징후(Anomalies)를 탐지하기 위해 어떤 기술들이 존재합니까?
통계적 방법 (z-score, IQR), 밀도 기반 방법 (DBSCAN, Isolation Forest), 오토인코더 재구성 오차 (Autoencoder reconstruction error), 그리고 규칙 기반의 범위/형식 검증 (Rule-based range/format validation) 등이 있습니다. 이러한 방법들은 단순히 오프라인에서만 실행되는 것이 아니라, 추론 파이프라인 (Inference pipeline) 내에서 실시간 가드레일 (Guardrail)로서 실행되는 경우가 많습니다.
3. 모델 테스팅 및 검증 (Model Testing & Validation)
21. ML 모델의 행동 테스팅 (Behavioral testing)이란 무엇이며, CheckList의 카테고리는 무엇입니까?
CheckList 프레임워크 (Ribeiro et al.)에 의해 대중화된 행동 테스팅은 단순히 집계된 정확도 (Aggregate accuracy)만을 보는 것이 아니라 모델의 능력을 직접적으로 검증합니다. 세 가지 핵심 테스트 유형은 다음과 같습니다: 최소 기능 테스트 (Minimum Functionality Tests, MFT) — 단순하고 타겟팅된 케이스; 불변성 테스트 (Invariance Tests, INV) — 레이블을 유지하는 섭동 (Perturbations, 예: 오타, 이름 교체) 하에서도 출력이 변하지 않아야 함; 방향성 기대 테스트 (Directional Expectation Tests, DIR) — 출력이 예측 가능한 방향으로 변해야 함 (예: 부정어를 추가하면 감성 분석 결과가 반전되어야 함).
22. ML 모델 맥락에서 A/B 테스팅이란 무엇이며, 주의해야 할 함정은 무엇입니까?
도전자 모델 (Challenger model)과 챔피언 모델 (Champion model) 사이로 트래픽을 무작위로 라우팅하여 운영 환경에서 비즈니스/품질 지표를 비교하는 것입니다. 함정으로는 불충분한 샘플 크기/통계적 검정력 (Statistical power), 신규성 효과 (Novelty effects), 실험군 간의 네트워크/간섭 효과 (Network/interference effects), 그리고 실제 비즈니스 임팩트를 반영하지 못하는 지표 선택 (예: 장기적인 신뢰도를 저하시키면서 참여도(Engagement)만 최적화하는 경우) 등이 있습니다.
23. 섀도 테스팅 (Shadow testing, 섀도 배포)이란 무엇이며, 언제 사용합니까?
새로운 모델을 운영 모델과 병렬로 실행하되, 그 출력을 사용자에게 제공하지 않고 실제 트래픽을 대상으로 예측값을 오프라인에서 비교하는 방식입니다. 이는 사용자 노출 없이 사용자 리스크를 제로(Zero)로 유지하면서, 실제 트래픽 환경에서 지연 시간 (Latency), 안정성, 그리고 예측 차이를 검증하는 데 이상적입니다.
24. ML 모델을 위한 카나리 테스팅 (Canary Testing)이란 무엇인가요?
새로운 모델을 실제 운영 트래픽의 작은 비율에 점진적으로 배포하고, 주요 지표를 면밀히 모니터링하며, 임계값을 초과할 경우 100%까지 확대하기 전에 자동으로 롤백 (Rollback)하는 방식입니다.
25. 과적합 (Overfitting)과 과소적합 (Underfitting)은 어떻게 테스트하나요?
훈련 (Training) 성능과 검증/테스트 (Validation/Test) 성능 곡선을 비교합니다 (두 곡선 사이의 간격이 크면 과적합을, 양쪽 모두 성능이 낮으면 과소적합을 나타냄). 훈련 세트 크기에 따른 학습 곡선 (Learning curves)을 사용하고, 교차 검증 (Cross-validation)을 적용하여 폴드 (Fold) 간 분산을 확인하며, 실제 분포 외 (Out-of-distribution) 홀드아웃 (Holdout) 데이터로 테스트합니다.
26. 교차 검증 (Cross-validation)이란 무엇이며, 테스트에 사용되는 일반적인 변형 방식은 무엇인가요?
데이터를 k개의 폴드로 나누어 k-1개로 훈련하고 나머지 하나로 검증하며, 모든 폴드를 순환하여 견고한 성능 추정치를 얻는 재표본 추출 (Resampling) 기법입니다. 변형 방식으로는 층화 k-폴드 (Stratified k-fold, 클래스 균형 유지), 시계열/롤링 윈도우 교차 검증 (Time-series/Rolling-window CV, 예측 모델에 필수적인 시간적 순서 준수), 그리고 그룹 k-폴드 (Group k-fold, 여러 행에 걸친 동일 환자/사용자와 같이 샘플 간 상관관계가 있을 때 데이터 누수 (Leakage) 방지) 등이 있습니다.
27. 분포 변화 (Distribution shift)에 대한 모델의 강건성 (Robustness)을 어떻게 테스트하나요?
의도적으로 분포 외 (Out-of-distribution) 데이터나 섭동 (Perturbed)된 테스트 세트(다른 시기, 지리적 위치, 인구 통계, 센서 노이즈 등)를 사용하여 평가하고, 성능 저하를 측정합니다. 또한 도메인 적응 (Domain adaptation) 테스팅이나 공변량 변화 (Covariate shift) 탐지 기술(예: 인구 통계학적 안정성 지수 (Population Stability Index), 훈련 및 운영 피처 분포 간의 KL 발산 (KL divergence))을 사용합니다.
AI 자동 생성 콘텐츠
본 콘텐츠는 Dev.to AI tag의 원문을 AI가 자동으로 요약·번역·분석한 것입니다. 원 저작권은 원저작자에게 있으며, 정확한 내용은 반드시 원문을 확인해 주세요.
원문 바로가기