설계 구조를 먼저 이해하고 경계 조건을 중심으로 검증 계획을 세우는 결
디지털 회로 설계 수업과 검증 실습을 함께 들으면서 설계 의도를 모르고 테스트벤치를 작성하면 경계 조건을 빠뜨리기 쉽다는 걸 경험했습니다. 설계 스펙에서 상태 전이 다이어그램을 먼저 그리고 각 전이에 대응하는 테스트 케이스를 매핑했더니 커버리지가 자연히 올라갔습니다. 설계에서 리셋 동작이나 에지 케이스가 어떻게 처리되는지 알면 테스트에서 집중해야 할 경계 조건이 보입니다. 반대로 검증 중 발견한 버그를 설계에 반영할 때도 의도한 동작과 실제 동작의 차이를 설계자에게 명확히 설명할 수 있습니다.
경계 조건 중심 테스트로 숨어 있던 버그 2개를 추가 발견했습니다. 지금도 검증은 설계 구조 이해부터 시작합니다.