| A | B | C | D | E | F | G | H | I | J | K | |
|---|---|---|---|---|---|---|---|---|---|---|---|
1 | |||||||||||
2 | |||||||||||
3 | |||||||||||
4 | |||||||||||
5 | VAPS 통합 테스트 정의서 (Integration Test Definition) | ||||||||||
6 | ▶ 1. MAIN → ACT 제동 제어 통합 (CAN 0x100) | ||||||||||
7 | # | 테스트 ID | 테스트 항목 | 관련 요구사항 ID | 사전 조건 | 입력 조건 | 테스트 절차 | 기대 결과 | 중요도 | 결과 (P, F, N/A) | |
8 | 1 | IT-01 | D단 제동 명령 전달 | FR-JDG-02 FR-CTL-04 | MAIN-ACT CAN 연결 정상 ACT 서보/모터 정상 | MAIN: gear=D, driver=ABSENT | MAIN에서 D_BRAKE 판정 후 CAN 0x100 송신 → ACT 수신 확인 | ACT가 brake_cmd=FORCE 수신 모터 정지 + 서보 제동 작동 | 상 | P | |
9 | 2 | IT-02 | R단 제동 명령 전달 | FR-JDG-03 FR-CTL-05 | MAIN-ACT CAN 연결 정상 ACT 서보/모터 정상 | MAIN: gear=R, driver=ABSENT | MAIN에서 R_BRAKE 판정 후 CAN 0x100 송신 → ACT 수신 확인 | ACT가 brake_cmd=FORCE 수신 모터 정지 + 서보 제동 작동 | 상 | P | |
10 | 3 | IT-03 | Rollaway 제동 명령 전달 | FR-JDG-05 FR-CTL-07 | MAIN-ACT CAN 연결 정상 ACT 서보 정상 | MAIN: gear=N, motion=MOVING, driver=ABSENT | MAIN에서 ROLLAWAY_BRAKE 판정 후 CAN 0x100 송신 → ACT 수신 확인 | ACT가 brake_cmd=FORCE 수신 서보 제동 작동 (N단 모터는 원래 개방) | 상 | P | |
11 | 4 | IT-04 | 제동 유지 명령 지속 전달 | FR-CTL-08 FR-JDG-07 | 자동 제동 진입 상태 복귀 조건 미충족 | 착석 없음 또는 문 열림 지속 | MAIN이 50ms 주기로 0x100 brake_cmd 지속 송신 확인 | ACT가 서보 제동 + 모터 정지 상태를 지속 유지 | 상 | P | |
12 | 5 | IT-05 | 제동 해제 명령 전달 | FR-CTL-09 FR-SAF-02 | 자동 제동 상태 유지 중 | driver=SEATED, door=CLOSE | MAIN에서 NORMAL 복귀 후 CAN 0x100 brake_cmd=RELEASE 송신 | ACT가 서보 해제 모터를 현재 기어 모드로 전환 | 상 | P | |
13 | 6 | IT-06 | 기어 상태 동기화 (gear override) | FR-SAF-04 FR-CTL-09 | 제동 해제 시점 gear override 활성 | brake_cmd FORCE→RELEASE 전환 | 0x100 Byte1의 gear 필드가 P(0)로 고정되는지 확인 | ACT가 gear=P 수신 P단 모드(쇼트 브레이킹) 전환 | 상 | P | |
14 | 7 | IT-07 | FORCE→HOLD 전환 확인 | FR-CTL-04 | D_BRAKE 진입 직후 ACT가 서보 제동 완료 | ACT 0x300 brake_state=HOLD 수신 | ACT 피드백 brake_state=HOLD 수신 후 MAIN 0x100 brake_cmd 변화 확인 | MAIN이 FORCE에서 HOLD로 전환 ACT 서보 유지 | 상 | P | |
15 | ▶ 2. MAIN → CLU 경고/상태 전송 통합 (CAN 0x200) | ||||||||||
16 | # | 테스트 ID | 테스트 항목 | 관련 요구사항 ID | 사전 조건 | 입력 조건 | 테스트 절차 | 기대 결과 | 중요도 | 결과 (P, F, N/A) | |
17 | 1 | IT-08 | 1차 경고 상태 전달 | FR-CTL-01 FR-DSP-03 | MAIN-CLU CAN 연결 정상 CLU LCD/부저 정상 | MAIN: WARN_LV1 판정 | MAIN 0x200 risk_level=1 송신 CLU 수신 후 경고 출력 확인 | CLU 부저 단속음(1초 간격) 출력 LCD에 경고 메시지 표시 | 상 | P | |
18 | 2 | IT-09 | 경고 강화 상태 전달 | FR-CTL-02 FR-JDG-06 | MAIN-CLU CAN 연결 정상 WARN_LV1 상태 유지 중 | MAIN: 도어 열림 10초 이상 지속 → WARN_LV2 판정 | MAIN 0x200 risk_level=2 송신 CLU 수신 후 강화 경고 확인 | CLU 부저 연속음(0.3초 간격) 전환 LCD 메시지 변경 | 상 | P | |
19 | 3 | IT-10 | 경고 해제 상태 전달 | FR-CTL-03 | MAIN-CLU CAN 연결 정상 CLU 경고 출력 중 | MAIN: 착석+문닫힘 → NORMAL 복귀 | MAIN 0x200 risk_level=0 송신 CLU 수신 후 해제 확인 | CLU 부저 정지 LCD 정상 화면 복귀 | 상 | P | |
20 | 4 | IT-11 | Rollaway 경고 전달 | FR-CTL-06 FR-JDG-04 | MAIN-CLU CAN 연결 정상 | MAIN: gear=N, door=OPEN → ROLLAWAY_WARN 판정 | MAIN 0x200 risk_level=3 송신 CLU 수신 후 경고 확인 | CLU 부저 단속음 출력 | 상 | P | |
21 | 5 | IT-12 | 제동 상태 시 비상등 점멸 | FR-CTL-10 | MAIN-CLU CAN 연결 정상 CLU LED 동작 정상 | MAIN: D_BRAKE/R_BRAKE/ ROLLAWAY_BRAKE 진입 | MAIN 0x200 risk_level=4/5/6 송신 CLU LED 동작 확인 | CLU 비상등 LED 점멸 제동 해제 시 점멸 중지 | 중 | P | |
22 | 6 | IT-13 | 제동 상태 시 브레이크등 점등 | FR-CTL-11 | MAIN-CLU CAN 연결 정상 CLU LED 동작 정상 | MAIN: 자동 제동 상태 | MAIN 0x200 risk_level ≥ 4 송신 CLU LED 동작 확인 | CLU 브레이크등 LED 점등 제동 해제 시 소등 | 중 | P | |
23 | 7 | IT-14 | 기어 상태 LCD 표시 | FR-DSP-01 | MAIN-CLU CAN 연결 정상 CLU LCD 동작 정상 | MAIN: gear=P→R→N→D 순차 전환 | MAIN 0x200 Byte3 변화 확인 CLU LCD 표시 확인 | CLU LCD에 P/R/N/D 정확 표시 | 중 | P | |
24 | 8 | IT-15 | 도어 상태 LCD 표시 | FR-DSP-02 | MAIN-CLU CAN 연결 정상 | MAIN: door=OPEN/CLOSE 전환 | MAIN 0x200 Byte2 변화 확인 CLU LCD 표시 확인 | CLU LCD에 열림/닫힘 정확 표시 | 중 | P | |
25 | 9 | IT-16 | 운전자 상태 LCD 표시 | FR-DSP-05 | MAIN-CLU CAN 연결 정상 | MAIN: driver=SEATED/ABSENT 전환 | MAIN 0x200 Byte1 변화 확인 CLU LCD 표시 확인 | CLU LCD에 존재/부재 정확 표시 | 중 | P | |
26 | 10 | IT-17 | 제동 해제 안내 메시지 표시 | FR-CTL-09 | MAIN-CLU CAN 연결 정상 자동 제동 상태 | 착석 미충족 또는 문 열림 | MAIN 0x200 상태 전송 CLU LCD 안내 메시지 확인 | CLU LCD에 해제 조건 안내 표시 (착석/문닫힘 안내) | 중 | P | |
27 | ▶ 3. ACT → MAIN 속도/가속도 피드백 통합 (CAN 0x300) | ||||||||||
28 | # | 테스트 ID | 테스트 항목 | 관련 요구사항 ID | 사전 조건 | 입력 조건 | 테스트 절차 | 기대 결과 | 중요도 | 결과 (P, F, N/A) | |
29 | 1 | IT-18 | ACT 속도 피드백 수신 | FR-DET-04 | ACT 인코더 정상 동작 MAIN-ACT CAN 연결 정상 | ACT: 인코더 회전 중 | ACT 0x300 speed_x100 송신 MAIN g_sensor.speed_kmh 반영 확인 | MAIN이 ACT 속도 값 정확 수신 speed_kmh에 반영 | 상 | P | |
30 | 2 | IT-19 | ACT 가속도 피드백 수신 | FR-DET-04 | ACT 가속도 센서 정상 MAIN-ACT CAN 연결 정상 | ACT: 가속도 센서 데이터 발생 | ACT 0x300 accel_x/y/z 송신 MAIN g_sensor.accel 반영 확인 | MAIN이 3축 가속도 값 정확 수신 | 상 | P | |
31 | 3 | IT-20 | ACT 제동 상태 피드백 수신 | FR-CTL-04 | ACT 서보 제동 완료 MAIN 피드백 대기 중 | ACT: brake_state 변화 | ACT 0x300 brake_state 송신 MAIN act_brake_state 반영 확인 | MAIN이 ACT 제동 상태 (RELEASE/HOLD/FORCE) 정확 수신 | 상 | P | |
32 | 4 | IT-21 | ACT 피드백 기반 이동 판정 | FR-DET-04 FR-JDG-05 | MAIN-ACT CAN 연결 정상 MAIN 이동 판정 대기 | ACT: speed ≥ 2.0 km/h 전송 | ACT 속도 피드백 수신 후 MAIN derive_motion() 결과 확인 | MAIN MOTION_MOVING 판정 → Rollaway 판단에 사용 | 상 | P | |
33 | 5 | IT-22 | ACT 피드백 타임아웃 처리 | FR-SAF-03 | MAIN-ACT 정상 통신 중 | ACT: 0x300 전송 300ms 이상 중단 | 0x300 미수신 300ms 경과 후 MAIN fail-safe 동작 확인 | MAIN speed=0, accel=0, alive=FALSE 적용 MOTION_STOPPED 처리 | 상 | P | |
34 | 6 | IT-23 | CAN 메시지 주기 정상 감시 | FR-SAF-03 FR-SAF-05 | 전체 ECU 정상 동작 상태 | 0x100(50ms), 0x200(100ms), 0x300 주기적 송신 | 각 메시지 주기 측정 0x100: 50ms, 0x200: 100ms 0x300 주기 확인 | 각 ECU가 정해진 주기로 CAN 메시지를 송수신한다 주기 오차 ±10% 이내 | 중 | P | |
35 | ▶ 5. CLU → RPi 로그 전송 통합 (UART) | ||||||||||
36 | # | 테스트 ID | 테스트 항목 | 관련 요구사항 ID | 사전 조건 | 입력 조건 | 테스트 절차 | 기대 결과 | 중요도 | 결과 (P, F, N/A) | |
37 | 1 | IT-24 | CLU 경고 이벤트 → RPi UART 수신 → 로그 저장 | CLU-LOG-01 FR-LOG-01 FR-LOG-14 | CLU-RPi UART 연결 정상 RPi MON 실행 중 | 경고 이벤트 발생 (risk_level 변화) | ① CLU 경고 이벤트 생성 ② UART 프레임 송신 확인 ③ RPi 수신 ④ DB 저장 확인 | RPi가 경고 이벤트 정확 수신/저장 Orange LED 점등 | 하 | P | |
38 | 2 | IT-25 | CLU 제동 이벤트 → RPi UART 수신 → 상세 상태 저장 | CLU-LOG-01~02 FR-LOG-01~04 FR-LOG-15 | CLU-RPi UART 연결 정상 RPi DB 정상 | 제동 이벤트 발생 | ① 제동 이벤트 생성 ② UART 송신 ③ RPi 수신 ④ 기어/도어/운전자/속도 저장 확인 | RPi가 제동 이벤트와 당시 차량 상태를 함께 저장 Red LED 점멸 | 하 | P | |
39 | 3 | IT-26 | 제동 해제 이벤트 → RPi 수신 → 로그 저장 | CLU-LOG-03 FR-LOG-01 FR-LOG-16 | 자동 제동 후 복귀 가능 상태 CLU-RPi UART 정상 | 운전자 복귀 + 도어 닫힘 → 해제 이벤트 발생 | ① 자동 제동 상태 생성 ② 해제 조건 충족 ③ CLU 해제 이벤트 송신 ④ RPi 저장 확인 | system/release 이벤트 정상 저장 Green LED 점등 | 하 | P | |
40 | 4 | IT-27 | 16bit binary 상태워드 파싱 통합 | CLU-LOG-02 FR-LOG-02 | CLU가 16bit binary bitstream 송신 가능 | 0/1 binary 상태워드 입력 | ① CLU에서 binary bitstream 송신 ② RPi 수신 문자열 확인 ③ warning/brake/gear/door/ driver/speed 파싱 결과 비교 | 상태워드가 각 필드로 정확히 해석된다 | 하 | P | |
41 | 5 | IT-28 | 잘못된 UART payload 입력 시 드롭 처리 | FR-LOG-03 FR-LOG-21 | RPi MON 실행 중 | 필수 필드 누락 또는 형식 오류 payload 송신 | ① 비정상 payload 송신 ② RPi 파싱 처리 확인 ③ DB 저장 여부 및 drop count 확인 | 유효하지 않은 payload는 저장되지 않고 드롭 카운터 반영 | 하 | N/A | |
42 | 6 | IT-29 | UART 연결 끊김 후 재연결 복구 통합 | FR-LOG-11 FR-LOG-21 | 정상 UART 수신 중 | 직렬 케이블 분리 후 재연결 | ① 정상 수신 확인 ② UART 물리 분리 ③ 상태 API에서 retry/error 확인 ④ 재연결 후 수신 복구 확인 | RPi가 재시도 상태 전환 후 재연결 시 자동 복구 | 하 | P | |
43 | ▶ 6. RPi 내부 통합 (DB · 웹 대시보드 · 실시간 알림 · LED · 서비스) | ||||||||||
44 | # | 테스트 ID | 테스트 항목 | 관련 요구사항 ID | 사전 조건 | 입력 조건 | 테스트 절차 | 기대 결과 | 중요도 | 결과 (P, F, N/A) | |
45 | 1 | IT-30 | 이벤트 저장 → 대시보드 통계 반영 | FR-LOG-04 FR-LOG-06 | RPi MON 실행 중 브라우저 접속 가능 | 경고/제동 이벤트 저장 | ① 이벤트 3건 이상 저장 ② 메인 화면 접속 ③ 총 이벤트 수/경고/제동 건수 확인 | DB 저장 결과가 웹 대시보드 통계에 즉시 반영 | 하 | P | |
46 | 2 | IT-31 | 필터 검색 → DB 조회 | FR-LOG-07 | 서로 다른 이벤트 다수 저장 | category, keyword, limit 조건 입력 | ① warning/brake/system 로그 저장 ② category 조건 검색 ③ keyword 검색 ④ limit 반영 확인 | 조건에 맞는 로그만 조회되어 화면에 표시 | 하 | P | |
47 | 3 | IT-32 | /api/events GET ↔ DB 연계 | FR-LOG-08 | 이벤트 저장 상태 | GET /api/events 요청 | ① 이벤트 저장 ② API 호출 ③ JSON 응답과 DB 값 비교 | 최근 로그 목록과 통계 JSON이 DB 내용과 일치 | 하 | P | |
48 | 4 | IT-33 | /api/events POST 외부 등록 → DB 저장 | FR-LOG-09 | POST 요청 가능한 상태 | 정상 JSON 이벤트 등록 요청 | ① POST로 외부 이벤트 등록 ② 응답 확인 ③ GET API로 재조회 | 외부 등록 이벤트가 저장되고 조회 결과에 반영 | 하 | P | |
49 | 5 | IT-34 | SSE 실시간 push → 브라우저 UI 갱신 | FR-LOG-12 FR-LOG-13 | 브라우저 실시간 구독 연결 중 | 신규 이벤트 저장 | ① /api/stream 연결 ② 신규 이벤트 저장 ③ new_event 수신 ④ 토스트/목록 갱신 확인 | SSE new_event 전달되고 브라우저 UI 즉시 갱신 | 하 | P | |
50 | 6 | IT-35 | 상태 진단 API (/health, /api/serial/status) | FR-LOG-11 | RPi MON 실행 중 | 정상/오류/재시도 상태 변화 | ① 정상 상태에서 API 조회 ② UART 오류 유도 ③ 재시도 상태 확인 ④ 복구 후 재조회 | 상태 API가 연결/오류/카운터/ 최근 raw 상태 정확 제공 | 하 | P | |
51 | 7 | IT-36 | RGB LED 색상 매핑 (경고/제동/해제) | FR-LOG-14~17 | RPi GPIO 및 RGB LED 정상 | warning/brake/release/status 이벤트 순차 저장 | ① warning → Orange ② brake → Red ③ release → Green ④ status/OK → Off ⑤ 색상 변화 확인 | 이벤트 종류별 LED 색상이 정확히 매핑 | 하 | P | |
52 | 8 | IT-37 | MP3 경고/제동 음원 재생 | FR-LOG-18 | RPi-MP3 모듈 직렬 연결 정상 | warning/brake 이벤트 저장 | ① warning 이벤트 → 음원 재생 ② brake 이벤트 → 음원 재생 | 이벤트 종류에 따라 지정 MP3 재생 | 하 | P | |
53 | 9 | IT-38 | ntfy URL 알림 전송 | FR-LOG-19 | 네트워크 정상 ntfy 채널 수신 가능 | RPi 재부팅 또는 MON 재기동 | ① RPi 재부팅 ② 웹 서버 응답 가능 시점 확인 ③ ntfy.sh/VAPS 메시지 수신 | MON 접속 URL이 1회 전송 중복 전송 없음 | 하 | P | |
54 | 10 | IT-39 | systemd 자동 실행 및 비정상 복구 | FR-LOG-20 | systemd 서비스 파일 정상 등록 | RPi 부팅 / 프로세스 강제 종료 | ① RPi 재부팅 → MON 자동 기동 확인 ② 프로세스 kill → 재시작 확인 ③ 웹/API 복구 확인 | 부팅 후 자동 기동 비정상 종료 시 자동 재시작 | 하 | P | |
55 | 11 | IT-40 | 직렬 오류 + 웹 상태 표시 + 복구 이력 | FR-LOG-11 FR-LOG-21 | RPi MON 실행 중 | 직렬 포트 open 실패 또는 제거 | ① 오류 유도 ② retry/error 상태 API 조회 ③ 웹 상태 표시 확인 ④ 재연결 후 회복 확인 | 직렬 오류와 복구 이력이 웹/API에서 확인 가능 복구 후 정상 수신 | 하 | P | |
56 | ▶ 7. Fail-Safe 및 이상 상황 통합 테스트 | ||||||||||
57 | # | 테스트 ID | 테스트 항목 | 관련 요구사항 ID | 사전 조건 | 입력 조건 | 테스트 절차 | 기대 결과 | 중요도 | 결과 (P, F, N/A) | |
58 | 1 | IT-41 | CAN Bus-Off 복구 후 통신 정상 | FR-SAF-05 | MAIN-ACT 간 CAN 통신 중 | Bus-Off 상태 유도 | ① Bus-Off 감지 확인 ② 50ms 후 자동 복구 확인 ③ 복구 후 0x100/0x200 정상 송신 ④ 복구 후 0x300 정상 수신 | Bus-Off 복구 후 3개 메시지 모두 정상 통신 | 상 | P | |
59 | 2 | IT-42 | MAIN→CLU 통신 단절 시 CLU 독립 경고 동작 | FR-SAF-03 | MAIN-CLU 정상 통신 중 | 0x200 미수신 유도 (MAIN 전원 차단 등) | ① CLU 0x200 타임아웃 확인 ② CLU LCD "통신 끊김" 표시 ③ CLU 비상등 경고 점멸 | CLU가 통신 단절 감지 후 독립적 경고 표시 | 상 | P | |
60 | 3 | IT-43 | MAIN→ACT 통신 단절 시 ACT 안전 동작 | FR-SAF-03 | MAIN-ACT 정상 통신 중 | 0x100 미수신 유도 (MAIN 전원 차단 등) | ① ACT 0x100 타임아웃(500ms) 확인 ② 제동 중이었다면 기어 P 전환 ③ 비제동 중이었다면 현상 유지 | ACT가 통신 단절 시 안전 방향(P단 전환)으로 동작 | 상 | P | |
61 | 4 | IT-44 | CAN 물리 단선 시 ECU별 안전 동작 | FR-SAF-03 FR-SAF-05 | 전체 ECU 정상 동작 중 | CAN 케이블 분리 | ① CAN 버스 분리 ② 각 ECU 타임아웃 감지 ③ MAIN/ACT/CLU 안전 동작 확인 | 통신 단절 시 각 ECU가 정의된 Fail-safe 동작 수행 | 상 | P | |
62 | 5 | IT-45 | RPi UART 단절 시 CLU 핵심 기능 독립 유지 | FR-LOG-21 | CLU-RPi UART 통신 중 | RPi UART 케이블 분리 | ① CLU 경고/제동 동작 영향 없음 확인 ② RPi 재기동 후 연결 복구 확인 ③ RPi 재연결 후 로그 수신 재개 | RPi 단절이 CLU 핵심 기능에 영향 없음 | 중 | P | |
63 | 6 | IT-46 | 전체 시스템 전원 ON 후 정상 기동 | FR-SAF-01 | 전체 ECU 전원 OFF 상태 | 동시 전원 ON | ① MAIN CAN 초기화 확인 ② ACT CAN 동기화 확인 ③ CLU LCD 초기 화면 확인 ④ RPi 웹 서버 기동 확인 ⑤ 초기 상태 = NORMAL 확인 | 4개 ECU 모두 정상 기동 초기 상태 NORMAL 진입 | 상 | P | |