Programming-[Base]/Basic of Coding

아스키 아트(ASCII Art)

컴퓨터 탐험가 찰리 2025. 12. 16. 19:45
728x90
반응형

특정 테스트 케이스의 경우(특히 시간 관련) 테스트 메서드 내용만 봐서는 이해하기가 힘들다.(아무리 주석을 열심히 달아도…)

그래서 이런 경우 아스키 아트를 활용하면 리뷰어나 테스트 코드를 작성하는 작성자에게도 가독성을 크게 향상 시킬 수가 있다.

 

 

/*

 * ┌────────────────────────────────────────────────────────────┐

 * │  Timeline                                                 

 * │                                                           

 * │  1/20 (today)                                             

 * │  15:00 (Daily)     18:00       (Batch)   20:00        

 * │                                                     

 * │  [Daily Start]────[★ middle End]        [Daily End]      

 * │  [================★]                     ...              

 * │                Actual End (18:00)                         

 * │                                                           

 * │  ★ Result: TRUE (middle End시각이 우선)                        

 * └────────────────────────────────────────────────────────────┘

 */

 

테스트 코드 내용을 보지 않아도 어떤 테스트를 할지 파악이 가능하다.

언제 넣어도 좋은 ASCII 아트 TOP 3

 

 

(1) 시간 흐름 (timeline)

 

20:00 ─────── 23:00 ─────── 04:00

전날            당일           다음날

 

 

 

(2) 상태 전이(state transition)

 

[REQUESTED] → [APPROVED] → [HAVING]

 

 

 

 

(3) 입력-출력 케이스 매트릭스

 

+---------------+-------------+------------+

| dailyStart    | dailyEnd    | expected   |

+---------------+-------------+------------+

| 20:00         | 04:00       | 04 종료    |

728x90
반응형