상식닷컴
로그인
가입하기
2026년 상식닷컴 선정 식당 & 카페 리스트
2025년 2026년 신상 호텔 리스트
최근에 오픈한 호텔을 찾는다면 살펴보세요
일주일 식단표 어플
자동 일주일 식단표 어플
안드로이드
아이폰
주식 & 코인 차트의 신
1000만원으로 2000만원 만들기 프로젝트
궁금한 상식 보기
복부지방을 감소시키는 9가지 운동법!
복부지방과 환경의 관계, 5가지 흥미로운 이야기!
뱃살빼는운동, 남성과 여성에게 다른 운동법이 필요한가요?
결핵 예방을 위한 음식, 10가지 추천!
엉덩이 건강을 위한 5가지 실천법
엉덩이를 지키는 8가지 필살기
백도복숭아를 사용한 세계 각국의 요리는?
백도복숭아의 수확 후 처리 과정은?
챗GTP와 함께하는 어린이 교육의 혁신 5가지 방법
TESOL과 관련된 인턴십 기회는?
"단백뇨 연구 결과, 주목해야 할 5가지 포인트"
멸균우유를 사랑하게 될 10가지 이유
Previous
Next
수정하기 - JUnit의 @DisplayNameGeneration 애너테이션은 무엇인가요?
닉네임
비밀번호
제목
내용
[이미지 업로드는 권한이 있는 사람만 가능. 하단 카톡으로 연락]
JUnit의 `@DisplayNameGeneration` 애너테이션은 테스트 클래스나 테스트 메서드에 사용자 정의 방식으로 표시 이름(display name)을 자동 생성하기 위해 사용됩니다. 기본적으로 JUnit 5에서는 테스트 메서드나 클래스 이름이 그 자체로 테스트 결과 리포트에 표시되는데, 때로는 이 이름이 가독성이 떨어지거나 더 직관적인 이름이 필요할 수 있습니다. 이때 `@DisplayNameGeneration`을 사용하면 전체 클래스 혹은 특정 메서드에 대해 일괄적으로 좀 더 읽기 쉽고 친숙한 형식의 이름을 자동으로 만들어 보여줄 수 있습니다. 구체적으로 어떤 역할을 하는가? - 테스트 클래스나 메서드명(예: `testCalculateSumWhenInputsAreValid`)을 사람이 읽기 쉬운 자연어 스타일로 변환해줍니다. 예를 들어 "testCalculateSumWhenInputsAreValid"가 "Test calculate sum when inputs are valid"와 같이 바뀌는 식입니다. - 별도의 애너테이션(@DisplayName)처럼 테스트 하나하나에 직접 읽기 좋은 이름을 달아주지 않아도 되므로 편리합니다. - 클래스 전체에 적용하면 해당 클래스 안 모든 테스트 메서드에 자동으로 적용됩니다. - 또한 서브클래스에도 상속 가능합니다. 기본 제공 DisplayNameGenerator JUnit 5는 기본적으로 몇 가지 이름 생성기 클래스를 제공합니다: 1. `DisplayNameGenerator.Standard` (기본값) - 테스트 메서드/클래스 이름을 그대로 표시합니다. 2. `DisplayNameGenerator.ReplaceUnderscores` - 메서드 이름 내의 언더스코어(_)를 공백으로 바꿔 가독성을 높입니다. 3. `DisplayNameGenerator.Simple` - 테스트 클래스 이름을 간단히 줄여서 표시하고 메서드 이름은 그대로 출력합니다. 4. `DisplayNameGenerator.ClassAndMethod` - 클래스명과 메서드명을 결합해서 표시합니다. 사용법 예시 ```java @DisplayNameGeneration(DisplayNameGenerator.ReplaceUnderscores.class) class CalculatorTest { @Test void test_add_two_numbers() { // 실제 테스트 코드 } } ``` 위 경우, 테스트 결과 보고서에서 `test_add_two_numbers` 대신 `test add two numbers`로 표현됩니다. 직접 커스텀 생성기 만들기 사용자 정의 클래스를 만들어 `DisplayNameGenerator` 인터페이스를 구현하면, 매우 다양한 방식으로 이름 생성 규칙을 커스터마이징할 수 있습니다. 예를 들어 특정 접두사/접미사 붙이기, 카멜케이스를 자연어 문장으로 변환, 한글 지원 등등 자유롭게 구현 가능합니다. --- 정리하자면, JUnit의 `@DisplayNameGeneration` 애너테이션은 테스트 메서드나 클래스 이름을 더 친근하고 뜻을 쉽게 파악할 수 있는 문구로 자동 변환해 테스트 결과 출력을 개선하기 위한 기능입니다. 직접 하나하나 이름을 지정하지 않고 일괄적으로 적용할 수 있어 테스트 코드의 가독성과 유지보수성을 향상시킵니다.
이용안내
커뮤니티 이용안내
×
- 게시한 게시글로 발생하는 문제는 게시자에게 책임이 있습니다.
- 게시글이 타인/타업체의 저작권을 침해할 경우 모든 책임은 게시자에게 있습니다. 게시자가 모든 손해를 부담해야 합니다.
- 상식닷컴 운영자는 게시자와 상의하지 않고 게시글을 수정 또는 삭제할 수 있습니다.
- 상식닷컴 운영자는 깨끗한 커뮤니티 공간을 만드는 것이 1순위입니다.
수정하기
취소하기