# Step 1 테스트 가이드

## 🚀 애플리케이션 실행 방법

### 방법 1: 배치 파일 실행 (Windows)
```bash
run_step1.bat
```

### 방법 2: 직접 명령어 실행
```bash
streamlit run app.py
```

애플리케이션이 시작되면 자동으로 브라우저가 열립니다.
만약 자동으로 열리지 않으면 다음 주소로 접속하세요:
**http://localhost:8501**

## 📋 테스트 시나리오

### 1단계: 기본 기능 테스트

#### 1.1 API 연결 확인
1. 왼쪽 사이드바에서 "🔌 API 연결 테스트" 버튼 클릭
2. "✅ API 연결 성공!" 메시지 확인

#### 1.2 샘플 이미지 테스트
1. 준비된 샘플 이미지 사용:
   - `tests/test_images/sample_fridge.jpg`
2. "냉장고 사진을 선택하세요" 버튼 클릭
3. 샘플 이미지 선택 및 업로드
4. 이미지가 화면에 표시되는지 확인

### 2단계: 재료 인식 테스트

#### 2.1 재료 인식 실행
1. 이미지 업로드 후 "🔍 재료 인식 시작" 버튼 클릭
2. 처리 중 진행률 표시 확인
3. 약 10-15초 대기

#### 2.2 결과 확인
1. 오른쪽 패널에 인식된 재료 목록 표시
2. 카테고리별로 분류된 재료 확인:
   - Vegetables (야채류)
   - Meat (육류)
   - Dairy (유제품)
   - Condiments (조미료)
   - 기타

### 3단계: 추가 기능 테스트

#### 3.1 결과 내보내기
1. 인식 완료 후 하단의 "💾 내보내기" 섹션 확인
2. "📄 JSON으로 저장" 버튼 클릭 → JSON 파일 다운로드
3. "📝 텍스트로 저장" 버튼 클릭 → TXT 파일 다운로드

#### 3.2 상세 응답 보기
1. "🔍 상세 응답 보기" 확장 패널 클릭
2. AI 모델의 원본 응답 텍스트 확인

#### 3.3 히스토리 확인
1. 왼쪽 사이드바 하단의 "📜 최근 기록" 섹션 확인
2. 이전 인식 작업의 시간과 재료 개수 표시

## 🖼️ 테스트용 이미지 준비

### 제공된 샘플 이미지
- **위치**: `tests/test_images/sample_fridge.jpg`
- **내용**: 18개의 다양한 식재료가 포함된 냉장고 이미지

### 실제 냉장고 사진 테스트
1. 스마트폰으로 냉장고 내부 촬영
2. 조명이 밝고 재료가 잘 보이도록 촬영
3. JPG, PNG, WEBP 형식 지원
4. 최대 10MB 크기

## ✅ 체크리스트

테스트 시 다음 항목들을 확인하세요:

- [ ] 애플리케이션이 정상적으로 실행되는가?
- [ ] 이미지 업로드가 작동하는가?
- [ ] 재료 인식이 수행되는가?
- [ ] 결과가 카테고리별로 표시되는가?
- [ ] 통계 정보가 표시되는가?
- [ ] 내보내기 기능이 작동하는가?
- [ ] 에러 발생 시 적절한 메시지가 표시되는가?

## 🔍 예상 결과

### 샘플 이미지 사용 시 인식 가능한 재료들:
- **야채류**: Tomatoes, Lettuce, Onions, Carrots, Broccoli, Cucumber
- **육류**: Meat, Fish, Chicken
- **유제품**: Milk, Cheese, Yogurt, Butter
- **과일**: Apples, Oranges
- **기타**: Eggs, Kimchi, Juice

## ⚠️ 문제 해결

### 애플리케이션이 실행되지 않는 경우
```bash
# 패키지 재설치
py -m pip install streamlit python-dotenv requests Pillow pandas
```

### API 연결 실패
1. `.env` 파일에 `OPENROUTER_API_KEY`가 설정되어 있는지 확인
2. 인터넷 연결 상태 확인

### 이미지 인식 실패
1. 이미지 형식 확인 (JPG, PNG, WEBP)
2. 파일 크기 확인 (10MB 이하)
3. API 키 유효성 확인

## 📊 성능 측정

- **이미지 업로드**: 즉시
- **재료 인식**: 10-15초
- **결과 표시**: 즉시
- **내보내기**: 즉시

## 🎯 테스트 완료 기준

다음 항목이 모두 정상 작동하면 Step 1 테스트 완료:
1. ✅ 이미지 업로드 및 표시
2. ✅ AI 재료 인식 실행
3. ✅ 결과 카테고리별 표시
4. ✅ 데이터 내보내기
5. ✅ 에러 처리

---

테스트 준비 완료!
`run_step1.bat`을 실행하거나 `streamlit run app.py` 명령어로 시작하세요.