[refactor/#450] 테스트 패키지 구조와 네이밍 컨벤션 정리#451
Merged
Merged
Conversation
Constraint: 도메인 단위로 Nested 구조와 테스트 메서드명을 함께 정리 Confidence: high Scope-risk: moderate Tested: ./gradlew compileTestJava; ./gradlew test -PexcludeIntegration --tests 'com.techfork.activity.*'; activity integration tests with temporary MySqlRedisIntegrationTestBase restored afterward Not-tested: full test suite
Constraint: 도메인 단위로 Nested 구조와 테스트 메서드명을 함께 정리 Confidence: high Scope-risk: moderate Tested: ./gradlew compileTestJava; ./gradlew test -PexcludeIntegration --tests 'com.techfork.post.*'; post integration tests with temporary MySqlRedisIntegrationTestBase restored afterward Not-tested: full test suite
Constraint: 도메인 단위로 Nested 구조와 테스트 메서드명을 함께 정리 Confidence: high Scope-risk: moderate Tested: ./gradlew compileTestJava; ./gradlew test -PexcludeIntegration --tests 'com.techfork.personalization.*'; personalization integration test with temporary MySqlRedisIntegrationTestBase restored afterward Not-tested: full test suite
Constraint: legacy domain/recommendation root 유지 Confidence: medium Scope-risk: moderate Tested: ./gradlew compileTestJava; ./gradlew test -PexcludeIntegration --tests 'com.techfork.domain.recommendation.*' Not-tested: RecommendationIntegrationTest blocked by Elasticsearch container startup timeout; MySqlRedisIntegrationTestBase check blocked by schema-validation mismatch
Constraint: legacy domain/source root 유지 Confidence: medium Scope-risk: moderate Tested: ./gradlew compileTestJava; ./gradlew test -PexcludeIntegration --tests 'com.techfork.domain.source.*' Not-tested: RssCrawlingJobIntegrationTest blocked by MySqlRedisIntegrationTestBase schema-validation mismatch
Constraint: legacy domain/search root 유지 Confidence: high Scope-risk: narrow Tested: ./gradlew compileTestJava; ./gradlew test -PexcludeIntegration --tests 'com.techfork.domain.search.*' Not-tested: full test suite
Constraint: shared global test support files 제외 Confidence: high Scope-risk: narrow Tested: ./gradlew compileTestJava; ./gradlew test -PexcludeIntegration --tests 'com.techfork.global.*' Not-tested: full test suite
일반 integrationTest 레인은 MySQL/Redis base를 기본으로 맞추고, ES가 필요한 평가/검색 품질 검증은 기존 IntegrationTestBase에 남긴다. 테스트 전용 H2 설정은 @TestConfiguration으로 제한해 SpringBootTest 스캔에 새지 않게 한다. Constraint: CI에서 Elasticsearch Testcontainer 시작 timeout이 일반 통합 테스트 컨텍스트까지 실패시킴 Rejected: 모든 integrationTest에서 IntegrationTestBase 유지 | ES 비사용 API 테스트가 ES 컨테이너 상태에 종속됨 Confidence: high Scope-risk: moderate Directive: ES 실기동이 필요한 테스트만 IntegrationTestBase를 사용하고 일반 API IT는 MySqlRedisIntegrationTestBase를 사용한다 Tested: ./gradlew integrationTest; ./gradlew integrationTest --tests 'com.techfork.auth.integration.AuthIntegrationTest'; ./gradlew integrationTest --tests 'com.techfork.activity.bookmark.integration.BookmarkIntegrationTest'; ./gradlew test --tests 'com.techfork.domain.source.batch.RssFeedReaderTest.enclosureExistsWithoutMedia_ExtractsThumbnail' -PexcludeIntegration Not-tested: ./gradlew test -PexcludeIntegration 전체 레인은 RssFeedReaderTest enclosure timeout 플래키 1건으로 실패 후 단일 재실행 통과
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
❤️ 기능 설명
테스트 패키지 구조와 네이밍 컨벤션을 정리했습니다.
@Nested구조와 테스트 메서드명을 도메인 단위로 정리했습니다.controller테스트 패키지를integration기준으로 정리했습니다.테스트 결과:
./gradlew compileTestJava test -PexcludeIntegration성공연결된 issue
연결된 issue를 자동으로 닫기 위해 아래 {이슈넘버}를 입력해주세요.
close #450
🩷 Approve 하기 전 확인해주세요!
@Nested그룹명과 테스트 메서드명이 읽기 좋은지 확인해주세요.✅ 체크리스트