3.실습코드테스트 - architectstory/MSA_REF_PATTERN_CQRS GitHub Wiki
Test 목표
(1) Command 서비스의 Swagger에서
- Create를 하고
- EVENT_STORE_DB 테이블에 Create 정보 생성 확인
- MongoDB를 통해 Query Model 데이타 생성 확인
- Update도 Create와 동일하게 테스트
(2) Query 서비스의 Swagger를 통해 MongoDB에 생성된 데이터를 확인
(3) Delete의 경우는 EVENT_STORE_DB에는 Data가 존재하지만 MongoDB에는 삭제
Command 서비스 : 8081 포트 사용
Query 서비스 : 8082 포트 사용
Test Script 작성
- Test script "test-cqrs.bat"
@echo off
start msedge http://localhost:8081/swagger-ui.html
start msedge http://localhost:8081/h2console
start msedge http://localhost:8082/swagger-ui.html
Kafka 실행
- start-zookeeper.bat 실행
- start-kafka.bat 실행
서비스 실행
- 서비스 실행 전에 gradle을 이용해서 build 하기 (Build하기 전에 clean을 해준다) Intellij에서
-
Order Command 서비스 실행 MSA_REF_BIZ_ORDER_COMMAND 모듈 /src/main/java 하위의 MsaRefBizOrderCommandApplication.class를 선택하고 마우스 오른쪽 버튼을 클릭하여 Run 선택
-
Order Query 서비스 실행 MSA_REF_BIZ_ORDER_QUERY 모듈 /src/main/java 하위의 MsaRefBizOrderQueryApplication.class를 선택하고 마우스 오른쪽 버튼을 클릭하여 Run 선택
Test 창 실행
- test-cqrs.bat 실행
(1) Swagger를 활용한 Data 생성
- Post에서 Order 데이터를 생성
- 우측의 "Try it Out" 버튼 클릭
{
"id": "1",
"origin": "ORDER",
"type": "Coffee",
"count": 10,
"cost": 1500
}
- "Execute" 버튼 클릭
Data 확인
-
EVENT_STORE_DB Table의 Data 생성 확인
-
JDBC URL : jdbc:h2:mem:MSA;DB_CLOSE_DELAY=-1;LOCK_TIMEOUT=2500;AUTOCOMMIT=OFF;DATABASE_TO_UPPER=true;
-
"connect" 클릭
-
EVENT_STORE_DB 확인
-
MongoDB 확인 MongoDB 실행 후 중앙의 Connect 버튼 클릭
왼쪽 메뉴의 MSA_READ_DB 하위의 ORDER 클릭
생성된 데이터 확인
-
API를 통한 Data 확인
(2) Swagger를 활용한 Data 수정
- Put 에서 Order 데이터를 수정
-
상단의 Post에서 Order의 Id 복사
-
우측의 "Try it Out" 버튼 클릭 id 값에 복사한 값을 붙여 넣은 후
-
{
"id": "1",
"origin": "ORDER",
"type": "ICE-CREAM",
"count": 2,
"cost": 3000
}
- "Execute" 버튼 클릭
Data 확인
-
EVENT_STORE_DB Table의 Data 생성 확인
-
"connect" 클릭
-
EVENT_STORE_DB 확인
-
MongoDB 확인 MongoDB 실행 후 중앙의 Connect 버튼 클릭
왼쪽 메뉴의 MSA_READ_DB 하위의 ORDER 클릭
수정된 데이터 확인
(3) Swagger를 활용한 Data 삭제
- DELETE 에서 Order 데이터를 삭제
- 하단의 Post에서 Order의 Id 복사
- 우측의 "Try it Out" 버튼 클릭 id 값에 복사한 값을 붙여 넣은 후
{
"id": "1"
}
- "Execute" 버튼 클릭
Data 확인
-
EVENT_STORE_DB Table의 Data 생성 확인
-
"connect" 클릭
-
EVENT_STORE_DB 확인
-
MongoDB 확인 MongoDB 실행 후 중앙의 Connect 버튼 클릭
왼쪽 메뉴의 MSA_READ_DB 하위의 ORDER 클릭
데이터를 삭제 하였기 때문에 해당 데이터는 존재하지 않음