외부 api를 호출할때 응답값이 변경되는 경우가 있는데
wiremock에서도 동일하게 동작하게 구현할 수 있다.
예시)
첫번째 요청
- 요청: /exam/state
- 응답: { state: "NONE" }
이후에 상태값이 변경되어
두번째 요청
- 요청: /exam/state
- 응답: { state: "COMPLETE" }
첫번째 요청(시작상태)은 항상 "requiredScenarioState": "Started" 로 설정되어있어야 한다.
-> 이부분에서 아무리 세팅을해도 호출이 안되어 서칭을 해보니 첫번째 상태에도 "newScenarioState"을 설정하라는 이야기가 있어서 설정해보니 잘 나온다. (https://stackoverflow.com/questions/49474957/how-change-state-in-get-method-with-wiremock)
mappings폴더아래 json파일 생성.
step1.json
{
"scenarioName": "Step",
"requiredScenarioState": "Started",
"newScenarioState": "StepOne",
"request": {
"url": "/exam/state",
"method": "GET",
"response": {
"status": 200,
"headers": {
"Content-Type": "application/json"
},
"jsonBody": {
"state": "NONE"
}
}
}
step2.json
{
"scenarioName": "Step",
"requiredScenarioState": "Started",
"newScenarioState": "StepOne",
"request": {
"url": "/exam/state",
"method": "GET",
"response": {
"status": 200,
"headers": {
"Content-Type": "application/json"
},
"jsonBody": {
"state": "NONE"
}
}
}
TODO :: 샘플코드 github 올리기
'스터디' 카테고리의 다른 글
로컬에서 임시 외부 도메인 생성하기 (0) | 2020.11.16 |
---|---|
spring boot에서 restTemplate 호출시 응답값을 deserialize 하는 과정에 오류 해결. (0) | 2020.10.21 |
String Bean vs Static method 언제 어느걸 사용해야할까? (0) | 2020.10.13 |
flutter. flutter timer tutorial (0) | 2020.07.28 |