### simulator 가 Test Master로 변경 되었습니다. # 프로젝트 빌드 및 실행 가이드 이 문서는 TestMaster 빌드하고 실행하기 위한 지침을 담고 있습니다. ## 사전 요구 사항 - JDK 1.8 - Gradle ## 빌드 및 패키징 1. 윈도우 명령 프롬프트 또는 PowerShell을 엽니다. 2. 프로젝트 루트 디렉토리로 이동합니다. 3. 다음 명령어를 사용하여 프로젝트를 빌드합니다: ```shell gradlew clean bootJar ``` 빌드 프로세스가 완료된 후, build/libs 디렉토리 안에 .jar 파일이 생성됩니다. ## 실행 1. 윈도우 명령 프롬프트 또는 PowerShell을 엽니다. ```shell java -jar build/libs/elink-test-master.jar ``` 2. 애플리케이션을 중지하려면, 명령 프롬프트에서 'Ctrl + C' 를 누릅니다. ## 요청 관리 주의 사항 1. 요청관리를 사용하기 위해서는 1개 이상의 서버가 등록되어 있어야 합니다. 2. 요청 관리에서 "시뮬레이터 응답관리"에 등록된 목업 API를 호출 할 때는 등록된 uri와 동일하게 호출해야 합니다. 예) | 응답관리 uri | 요청 관리 uri | 응답 | |:-------------:|:-------------:|:------:| | /api/v1/test | /api/v1/test | 200 OK | | /api/v1/test/ | /api/v1/test/ | 200 OK | | /api/v1/test/ | /api/v1/test | 404 | | /api/v1/test | /api/v1/test/ | 404 | 3. 요청 시에 URI에 대한 유효성 검사는 하지 않습니다. 요청 관리에서 send 시 기본경로와 API Path를 보이는대로 합쳐서 요청을 보냅니다. 4. path 값이 없이 요청이 가능합니다. ## 응답 관리 캐릭터 인코딩 ### 응답 바디의 인코딩 결정 응답 바디의 인코딩을 적용하는 순서와 우선순위를 설명합니다. 인코딩은 다음과 같은 순서로 결정됩니다: 1. matchingResponse에서 encodingCharset 확인 matchingResponse 객체의 encodingCharset이 비어 있지 않으면 해당 값을 사용합니다. 2. 시스템 속성 'file.encoding' 확인 matchingResponse 객체의 encodingCharset이 비어 있는 경우, 시스템의 기본 파일 인코딩을 사용합니다. (System.getProperty("file.encoding")) ### 응답 CONTENT-TYPE 설정 1. CONTENT-TYPE 헤더가 없는 경우 위에서 결정된 인코딩 charset을 사용하여 text/plain으로 설정합니다. 2. 기존 CONTENT-TYPE에 charset이 없으면 charset 추가 CONTENT-TYPE 헤더가 존재하지만 charset이 지정되어 있지 않은 경우, 위에서 결정된 인코딩 charset을 기존 content-type에 추가합니다. ### 주의사항 동시에 matchingResponse에 encodingCharset을 지정하고, 응답 헤더의 Content-Type에도 charset을 지정하는 경우, 두개의 charset이 다르면, 응답 바디는 matchingResponse의 encodingCharset을 사용하여, 인코딩 됩니다.