내용으로 건너뛰기
권남
사용자 도구
로그인
사이트 도구
검색
도구
문서 보기
이전 판
역링크
최근 바뀜
미디어 관리자
사이트맵
로그인
>
최근 바뀜
미디어 관리자
사이트맵
추적:
java:mock_server
이 문서는 읽기 전용입니다. 원본을 볼 수는 있지만 바꿀 수는 없습니다. 문제가 있다고 생각하면 관리자에게 문의하세요.
====== Mock Server ====== * http://www.mock-server.com/ * [[network:test|Network simulation test]] * refer [[java:wiremock|java:wiremock]] * refer [[network:toxiproxy|toxiproxy]] * [[network:hoverfly|hoverfly]] * [[rest_api:json_server|Json Server]] * [[http://www.baeldung.com/mockserver|Introduction to MockServer]] * [[https://www.mock-server.com/mock_server/getting_started.html|Getting Started]] * [[https://www.mock-server.com/mock_server/running_mock_server.html|Mock Server 의 다양할 실행방법]] JUnit 으로 띄우기등. ===== 기본 개념 ===== * 별도의 Mock Server를 별도로 띄워놓고 Application에서 가상의 요청/응답 스펙을 작성한 뒤에 테스트를 진행하거나, * 혹은 Java Application의 경우 아예 테스트 코드 시작시 Mock 서버를 띄우고 테스트 진행후 서버도 내려버릴 수 있다. * 또한 Mock Server에 일부는 가상 요청/응답으로 하고, 나머지 일부는 실제 API 서버로 요청을 Proxy 하도록 처리도 가능하다. ===== Server ===== * 기본적으로 Netty 기반 Java application 이며 * 이를 통합 jar 실행, Maven plugin, npm, war(Tomcat에 올려 띄우기), Java Test code내에서 띄웠다 테스트 끝나면 종료, docker 등을 통한 서버 띄우기가 가능하다. * 간단한 Jar를 통한 실행 - 사이트에서 jar 다운로드 받고서<code> java -Dmockserver.logLevel=INFO -jar mockserver-netty-5.3.0-jar-with-dependencies.jar -serverPort 1080 </code> ===== Client ===== * Java, node.js, REST API 등을 지원한다. * client로 expectation 정의, verification, reset(cleansing) 등을 수행할 수 있다. ==== Java Client ==== * ''org.mockserver.client.server.MockServerClient'' : 원격 MockServer 인스턴스에 접속하여 expectation을 선언하는 Client Class * ''org.mockserver.integration.ClientAndServer'': 로컬 MockServer 인스턴스를 생성하고 여기에 expectation을 선언하고 요청을 날린다. * 간단한 expectation 작성 - Mock Server를 띄우고 아래 코드를 실행한 뒤에 http://localhost:1080/hello 요청을 하면 3초 뒤에 "World!!시간" 응답이 온다.<code java> import static org.mockserver.model.HttpRequest.request; org.mockserver.model.HttpResponse#response() new MockServerClient("localhost", 1080) .when( request() .withMethod("GET") .withPath("/hello") ) .respond( response() .withDelay(TimeUnit.SECONDS, 3) .withBody("World!!" + LocalDateTime.now()) ); </code> ==== 참조 ==== * [[https://www.baeldung.com/mockserver|Introduction to MockServer | Baeldung]]
java/mock_server.txt
· 마지막으로 수정됨: 2023/01/02 14:30 저자
kwon37xi
문서 도구
문서 보기
이전 판
역링크
맨 위로