PopcornMate

[리팩토링] 멀티모듈에 Spotless 적용하면서 테스트 코드 컨벤션 유지하기

_hanbxx_ 2024. 4. 16. 17:20
728x90

이미 진행이 된 프로젝트에 합류를 하다 보니 코드 컨벤션 맞추어서 해야하는데 오랜만에 팀 프로젝트로 진행하다 보니 컨벤션 실수도 하고 새로 알게 된 점들도 있다.

그중에서 Spotless이라는 플러그인을 알게 되었는데, 테스트 코드의 컨벤션을 지킬 수 있게 도와준다.

나름 유용할 것 같아서 팝콘메이트에도 적용을 해보았다. 

(과거에 한창 프론트엔드 할 때 VSCode의 prettier 플러그인을 애용했는데 스프링 부트에서도 비슷한 플러그인을 제공해준다니!!)

 

Spotless란?

Junit5에서 컨벤션을 지키고 쉽게 유지보수하기 위해 사용하는 플러그인이다

 

 

메인 루트의 Build.gradle

plugins {
	id 'java'
	id 'org.springframework.boot' version '3.2.1'
	id 'com.diffplug.spotless' version '6.11.0'
}

...


// spotless 설정
spotless {
	java {
		target("**/*.java")
		googleJavaFormat().aosp()
		importOrder()
		removeUnusedImports()
		trimTrailingWhitespace()
		endWithNewline()
	}
}

 

실행 명령어

 

설정하는 것도 간단하니 테스트 코드 짤 때 정말 많은 도움을 받을 수 있을 것 같다.

728x90