# YOUELBLOCKS 수동 테스트 체크리스트

**전제:** 깨끗한 워드프레스 설치, `wp-config.php`에 `define('WP_DEBUG', true);` 설정 후 진행.

---

## 1. 마이그레이션 페이지 로드 / 스크립트 동작

### 1.1 페이지 접속

- [ ] **관리자 → YOUELBLOCKS → 데이터 관리** 이동
- [ ] 상단 탭에서 **「🔄 필드명 마이그레이션」** 클릭
- [ ] 페이지가 정상 로드되는지 확인 (흰 화면/치명적 오류 없음)
- [ ] 브라우저 개발자도구 **Console** 탭에 PHP/JS 오류가 없는지 확인

### 1.2 스크립트 동작

- [ ] **페이지 선택** 드롭다운에서 폼이 있는 페이지 선택
- [ ] 선택 후 **필드 목록**이 로드되는지 확인
- [ ] **「동기화 상태 확인」** 버튼 클릭 → 모달 또는 결과가 정상 표시되는지 확인
- [ ] (마이그레이션 대상이 있으면) **「마이그레이션 실행」** 클릭 → 진행/완료 메시지 확인
- [ ] **「전체 선택」** 체크박스로 필드 일괄 선택/해제가 되는지 확인

### 1.3 ob_start() 관련

- [ ] 위 단계 동안 **Notice/Warning** 없이 페이지가 렌더링되는지 확인 (버퍼 미닫힘 오류 없음)

---

## 2. 관리자 AJAX (테이블 구조, 동기화, 마이그레이션 등)

### 2.1 테이블 구조 / 블록 테이블 구조

- [ ] 마이그레이션 페이지에서 페이지 선택 시 **필드 목록 로드** (AJAX `youelblocks_load_migration_fields`) 정상 동작
- [ ] 개발자도구 **Network** 탭에서 해당 요청이 **200**이고 응답에 `success: true` 인지 확인
- [ ] 실패 시 응답 메시지가 「보안 검증에 실패했습니다」 등으로 나오는지 확인 (nonce 검증 동작 여부)

### 2.2 동기화

- [ ] **「동기화 상태 확인」** 클릭 → `youelblocks_check_sync_status` 요청 200, 결과 정상
- [ ] **「마이그레이션 실행」** 또는 **「수동 동기화 실행」** 클릭 → `youelblocks_run_field_migration` / `youelblocks_run_sync` 요청 200, 결과 정상
- [ ] Network에서 실패한 요청이 있으면 **Response** 내용 확인 (nonce/권한 오류 메시지 여부)

### 2.3 기타 관리자 AJAX

- [ ] **YOUELBLOCKS → 초기화** 등 다른 관리 페이지에서 버튼/기능 사용 시 JS 오류 없이 동작하는지 확인

---

## 3. 페이지 관리 (manage_blocks 링크 · nonce)

### 3.1 목록에서 링크 확인

- [ ] **관리자 → YOUELBLOCKS → 페이지 관리** 이동
- [ ] 필드블록이 있는 페이지 목록이 보이는지 확인
- [ ] 각 행의 **「블록 관리」** (또는 동일한 이름) 버튼/링크가 **nonce가 포함된 URL**로 열리는지 확인
  - URL 예: `admin.php?page=youelblocks-pages&action=manage_blocks&page_id=123&_wpnonce=...`

### 3.2 manage_blocks 화면 접근

- [ ] **「블록 관리」** 클릭 → 해당 페이지의 블록 관리 화면으로 이동하는지 확인
- [ ] URL에서 `_wpnonce`를 제거하거나 잘못된 nonce로 다시 접속 → **「보안 검증에 실패했습니다」** 등으로 차단되는지 확인
- [ ] 정상 nonce로 접속 시 블록 목록/설정이 정상 표시되는지 확인

### 3.3 권한

- [ ] 관리자 권한이 없는 사용자로 로그인 시 **페이지 관리** 메뉴가 보이지 않거나 접근 시 차단되는지 확인

---

## 4. WP_DEBUG 확인

- [ ] 테스트 내내 **화면 상단/하단**에 PHP Notice, Warning, Fatal error가 출력되지 않는지 확인
- [ ] `wp-content/debug.log` (로그 파일 사용 시)에 예상치 못한 오류가 쌓이지 않는지 확인

---

## 체크리스트 요약

| 구분 | 확인 항목                                | 통과 |
| ---- | ---------------------------------------- | ---- |
| 1    | 마이그레이션 페이지 로드/스크립트        | ☐    |
| 2    | 관리자 AJAX (테이블/동기화/마이그레이션) | ☐    |
| 3    | 페이지 관리 manage_blocks + nonce        | ☐    |
| 4    | WP_DEBUG 오류 없음                       | ☐    |

**모두 통과하면** 보안 보완(ob_start, nonce, sanitize/escape)이 실제 환경에서 정상 동작하는 것으로 간주할 수 있습니다.
