BDD : 애플리케이션이 어떻게 “행동”해야 하는지에 대한 공통된 이해를 구성하는 방법으로, TDD에서 창안했다. Mockito는 BddMockito라는 클래스를 통해 BDD 스타일의 API를 제공한다. import static org.mockito.BDDMockito.*; 1. When -> Given given(memberService.findById(1L)).willReturn(Optional.of(member)); given(studyRepository.save(study)).willReturn(study); 2. Verify -> Then then(memberService).should(times(1)).notify(study); then(memberService).shouldHaveNoMore..
StudyService 의 createNewStudy() 메소드를 통해 테스트 public class StudyService { private final MemberService memberService; private final StudyRepository repository; public StudyService(MemberService memberService, StudyRepository repository) { assert memberService != null; assert repository != null; this.memberService = memberService; this.repository = repository; } public Study createNewStudy(Long memb..
1. Mock 객체 만들기 내, 외부 API를 사용할 때 인터페이스를 통해 객체를 생성하려면 선언되어 있는 추상 메소드를 모두 구현한 클래스 혹은 익명 클래스를 만들어야 한다. 해당 작업을 Mockito가 해주고 만들어진 Mock 객체를 사용할 수 있다. 위와 같은 구조에서 MemberService, StudyRepository 가 인터페이스이다. 1) MemberService는 규약만 정의해 놓은 상태라고 가정하고, StudyRepository 는 JpaRepository를 상속받는 인터페이스이다. public interface MemberService { Optional findById(Long memberId); void validate(Long memberId); void notify(Study ..
1. 의존성 추가 Spring boot로 프로젝트를 생성하면 spring-boot-starter-test 의존성을 추가할 때 다음 두 개의 패키지가 추가된다. mockito-core mockito-junit-jupiter : JUnit 의 Mockito 확장 구현체 2. Mockito를 통해 테스트 할 때 생각해야 할 세 가지 Mock을 만드는 방법 Mock이 어떻게 동작해야 하는지 관리하는 방법 Mock의 행동을 검증하는 방법 출처 https://www.inflearn.com/course/the-java-application-test 더 자바, 애플리케이션을 테스트하는 다양한 방법(백기선)
- Total
- Today
- Yesterday
- Spring
- 스프링 예외 추상화
- mockito
- Ubiquitous Language
- 학습 테스트
- Spring Boot
- H2
- 트랜잭셔널 아웃박스 패턴
- HTTP 헤더
- Spring Data JPA
- clean code
- ATDD
- Git
- 폴링 발행기 패턴
- MySQL
- spring rest docs
- 육각형 아키텍처
- java8
- 도메인 모델링
- named query
- 계층형 아키텍처
- 이벤트 스토밍
- 클린코드
- JPA
- 스프링 카프카 컨슈머
- http
- 마이크로서비스 패턴
- TDD
- Stream
- kafka
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |