@AutoConfigureMockMvc
@SpringBootTest
@AutoConfigureMockMvc
- 실제 운영 환경에서 사용될 클래스들을 통합하여 테스트한다.
- 단위 테스트와 같이 기능 검증을 위한 것이 아니라, Spring Framework에서 전체적으로 flow가 제대로 동작하는지 검증하기 위해 사용한다.
- 애플리케이션의 Bean, 설정을 모두 로드한다. => 운영 환경과 가장 유사하게 테스트할 수 있다. but 시간이 오래 걸린다.
- 간단하게 테스트하기 위해서는 @WebMvcTest를 사용해야 한다.(같이 사용하면 서로의 MockMvc를 모킹해서 충돌 발생)
MockMvc
@Autowired
MockMvc mvc;
- 실제 객체와 비슷한 모의 객체
- 테스트 작성을 위한 환경 구축이 어려운 경우 Mock 객체를 이용하면 쉽게 테스트할 수 있다.
MockMvc 메서드
perform() : 브라우저에서 서버에 URL 요청을 하듯 컨트롤러를 실행시킬 수 있다. get(), post(), put(), delete() 제공
andExpect() : 응답 결과를 검증할 수 있다.
status() : 응답 상태 코드 검증
andDo() : 요청/응답 메시지 확인
참고
https://elevatingcodingclub.tistory.com/61
tailwind & Daisy UI
<body>
<link href="https://cdn.jsdelivr.net/npm/daisyui@2.51.5/dist/full.css" rel="stylesheet" type="text/css"/>
<script src="https://cdn.tailwindcss.com"></script>
...
</body>
위와 같이 사용하면 된다.
tailwind가 있어야 데이지 UI를 사용할 수 있다.
body에 코드를 넣어주는 이유는.. 그냥 버그라고 한다..
toastr
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.6.4/jquery.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/toastr.js/2.1.4/toastr.min.js"></script>
<link rel="stylesheet" href="https://jhs512.github.io/toastr/toastr.css">
toastr를 사용하기 위해서는 jQuery도 있어야 한다.
jQuery : HTML의 클라이언트 사이드 조작을 단순화 하도록 설계된 크로스 플랫폼의 자바스크립트 라이브러리
@Transactional
@Transactional(readOnly = true)
select만 일어나는 부분임을 명시
read/write를 수행하는 마스터 DB, read만 수행하는 슬레이브 DB 중 슬레이브 DB에서 select를 수행할 수 있도록 한다. => 마스터 DB로 요청이 집중되는 것을 막는다.
@Transactional(readOny = false) <= default : insert, update, delete가 일어나는 부분임을 명시
@CreatedDate, @LastModifiedDate 사용하기
@EnableJpaAuditing이 있어야 @EntityListeners(AuditingEntityListener.class)가 작동하고,
@EntityListeners(AuditingEntityListener.class)가 있어야 @CreatedDate, @LastModifiedDate가 작동한다.
* HTML 파일 작업 중 필요 없는(?) 에러가 발생할 때(빨간 줄 뜰 때)
File > Settings > Inspections에서 XML > Unbound namespace prefix, Unresolved 'id' reference 체크 해제
Git
브랜치 목록 조회
git branch
로컬 브랜치 조회
git branch -r
원격 브랜치 조회
git branch -a
모든 브랜치 조회
git branch -D 브랜치_이름
브랜치 삭제
'프로젝트 & TIL > 일별 공부 기록 (백엔드 스쿨)' 카테고리의 다른 글
29일차 - 로그인 연동하기 (0) | 2023.04.03 |
---|---|
28일차 - @RequestScope (0) | 2023.03.31 |
26일차 - 스프링부트 게시판 조회수 구현, 빌더 패턴(@Builder) (0) | 2023.03.29 |
25일차 - Git Bash 명령어 (0) | 2023.03.28 |
24일차 - Git bash 명령어 (0) | 2023.03.27 |