유틸리티 소개

정규표현식 테스트 자동화하는 방법

정규표현식이 변경될 때마다 수동으로 테스트하기 번거롭다. 테스트 코드로 자동화하자.

테스트 케이스 작성

매칭되어야 하는 문자열 목록, 매칭되면 안 되는 문자열 목록을 배열로 만든다. 각각 테스트한다.

Jest 예시

test 함수에서 expect(pattern.test(str)).toBe(true) 이런 식으로 검증. 정규표현식 테스터에서 먼저 확인한 케이스들을 테스트 코드로 옮기자.

회귀 방지

누군가 패턴을 수정해도 테스트가 실패하면 바로 알 수 있다. CI/CD에 포함시켜두면 안전하다. 테스터와 자동 테스트를 병행하면 완벽하다.

코드 리뷰 체크리스트

정규표현식을 코드 리뷰할 때 확인할 것들: 1) 특수문자 이스케이프가 제대로 됐는지, 2) 앵커(^, $)가 필요한지, 3) 탐욕적/게으른 매칭이 맞는지, 4) 테스트 케이스가 있는지. 정규표현식 테스터로 검증했는지 물어보자.

버전 관리와 변경 이력

정규표현식을 변경하면 기존에 잘 동작하던 것이 깨질 수 있다. 변경 사유와 테스트 결과를 커밋 메시지에 남기면 나중에 추적하기 좋다.

결론

정규표현식은 강력하지만 양날의 검이다. 잘 쓰면 코드가 간결해지고, 잘못 쓰면 유지보수 악몽이 된다. 테스터로 충분히 검증하고, 문서화하고, 테스트 코드를 작성하자. 그게 건강한 정규표현식 사용법이다.

정규표현식 테스터에서 실시간으로 패턴을 테스트하고 결과를 확인하면서 학습하면 정규표현식 실력이 빠르게 늘어난다.