임베디드 용어 사전
관측·테스트

단위 테스트

하드웨어 없이 PC에서 로직만 떼어 검증하는 테스트. 프로토콜 파싱·상태 기계·계산 코드가 대상이다.

"보드가 없으면 테스트를 못 한다" 는 말은 절반만 맞다.

무엇이 PC 에서 가능한가

가능      프로토콜 파싱 · 상태 기계 · 필터 계산 · 링 버퍼 · CRC
어렵다    레지스터 직접 접근 · 인터럽트 타이밍 · 아날로그 특성

핵심은 하드웨어 접근을 한 층으로 몰아내는 설계다. 그 층만 가짜로 바꾸면 나머지는 PC 에서 돈다.

/* 하드웨어에 직접 붙지 않게 분리한다 */
void protocol_feed(uint8_t byte);          /* 순수 로직 — PC 에서 테스트 */
void uart_isr(void) { protocol_feed(DR); } /* 하드웨어 결합부는 얇게 */

얻는 것

  • 보드 없이도 회귀 검증이 돌아간다 (CI 에 넣을 수 있다)
  • 경계 조건을 마음대로 만들 수 있다 — 실제 하드웨어로는 재현하기 힘든 상황까지
  • 리팩터링이 두렵지 않아진다

한계를 인정한다

타이밍·전기적 문제는 여전히 하드웨어에서만 드러난다. 그래서 단위 테스트는 HIL 과 역할이 다르지 대체하지 않는다.

함께 보면 좋은 용어

노트에서 맥락과 함께 보기 — 테스트 — 하드웨어 없이, 그리고 하드웨어와 함께