inflearn logo
강의

講義

知識共有

Java/Spring テストを追加したい開発者の間違いノート

最後のリファクタリング

좋은 설계

180

musoyou10852556

投稿した質問数 3

0

spring tdd jpa 소프트웨어-테스트 unittest

回答 1

0

communityai8509

안녕하세요, 인프런 AI 인턴입니다. 준환님.

질문하신 내용은 테스팅과 설계의 관계, 특히 헥사고날 아키텍처에 대한 흥미로운 통찰을 담고 있습니다. 헥사고날 아키텍처는 시스템의 내부와 외부를 명확히 구분하여, 테스트와 유지보수성을 높이는 방식으로 설계됩니다. 이런 방식은 테스트 용이성과 좋은 설계 사이에 긍정적인 상관관계가 있는지를 보여주는 좋은 예시가 될 수 있습니다.

헥사고날 아키텍처에서는 애플리케이션의 핵심 비즈니스 로직을 외부의 변화에 덜 민감하게 만들기 때문에, 여러 가지 외부 계층(예: 데이터베이스, UI, 외부 API)에서 오는 변화에도 비즈니스 로직은 영향을 최소화합니다. 이는 특히 테스트 작성 시, 외부 의존성 없이 비즈니스 로직 단위 테스트를 쉽게 작성할 수 있도록 합니다.

결론적으로, 소형 테스트를 추구하며 헥사고날 아키텍처를 통해 테스트 코드를 쉽게 바꾸는 경험은 곧 좋은 설계를 도출하는 과정이 될 수 있습니다. 이러한 아키텍처는 쉽게 테스트 가능하게 만들어주며, 이는 곧 좋은 설계의 지표 중 하나로 볼 수 있습니다.

지식공유자님의 경험과 유사한 상황을 다루는 답변이 있어 도움이 될 수 있습니다. 아래 링크를 참고해 보세요:
- JPA의 장단점과 관련된 글

저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다.
현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏
추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.

UserService, CertificationService 책임 분리 기준 질문

0

26

1

service.port 패키지로 이동한 UserRepository가 infrastructure에 있는 UserEntity에 의존

0

58

1

Service 소형 테스트 질문

0

82

1

조회 시 엔티티를 조회하는 것이 아닌QueryDSL을 많이 사용 시 Dto는 어떻게 하나요?

0

116

1

controller 의 port 패키지의 service 인터페이스 사용

0

72

1

빌드 문제

0

92

1

빌드 안 되시는 분들 참고

0

102

1

update에서 Repository.save

0

105

1

최종 완성된 코드를 받아 볼 수 있을까요?

0

156

1

의존성 역전으로 해결한 외부의존성?

0

162

1

Controller에 테스트

0

138

1

JPA가 아닌 Mapper 아키텍처 기반 테스트 코드 작성

0

242

0

영속성 객체 구분으로 인한 JPA와 Querydsl의 Projection 사용

0

224

1

인프라계층 구현체와 테스트 구현체에 대한 질문

0

222

1

실습 코드 커밋

0

372

1

UserEntity 메서드

0

293

2

CertificationServiceTest에서 MailSender 인터페이스가 아닌 FakeMailSender를 이용하는 것

0

217

1

레이어드 아키텍처 개발에 대하여

0

231

1

BDDMockito의 when을 사용한 코드가 given 절에 있는 이유가 궁금합니다.

0

223

1

테스트에서 주입과 생성

0

198

1

프로젝트 코드는 제공해주시지 않는건가요?

0

382

2

개선된 아키텍처의 구조

0

277

1

서비스 레이어의 단위 테스트 범위 고민

0

188

1

도메인 객체 / entity 객체 / requset, response 객체 간 mapping 시 mapper 사용

1

344

1