0
REST
애플리케이션을 테스트 할 때 soapui
을 사용하고 있습니다. Groovy 테스트 단계에서 mockRequest 변수를 호출 할 수 있는지 알고 싶습니다.soapui 테스트 단계에서 mockRequest 변수 사용
import com.eviware.soapui.impl.wsdl.mock.WsdlMockResult;
def queryString = mockRequest.getHttpRequest().getQueryString()
def httpResponse = mockRequest.httpResponse
//log.info "HTTP Response is: "+httpResponse
def mediaType = mockRequest.getHttpRequest().getHeader("Content-Type")
def groovyUtils = new com.eviware.soapui.support.GroovyUtils(context)
//This variable is used to get the soapui project path
def path = groovyUtils.projectPath + "/mockResponse/"
if (mockRequest.getMethod() == "POST" && mediaType=="application/xml"){
def notifyRequest = mockRequest.requestContent
def notifyXml = new XmlSlurper().parseText(notifyRequest)
String representation = notifyXml.representation
def decoded = new String(representation.decodeBase64())
log.info "The decoded data received is: "+decoded
new File("E:\\some_folder\\mockResponse\\1.xml").withWriter{ it << decoded }
WsdlMockResult mockResult = new WsdlMockResult(mockRequest)
def Response = mockRequest.httpResponse
httpResponse.setContentLength(0)
Response.status = 200
return mockResult
}
는 사실 내가 메시지가 MockService
다음 적절한 응답에 수신 될 때마다 전송되어야되도록 결과를 달성하고자 :
나는 다음과 같은 그루비 스크립트가 있습니다. 또한 수신 된 요청 메시지의 일부 데이터를 저장하려고합니다. 이 기능은 각 테스트 케이스마다 다르므로 mockService의 onRequest 탭 대신 그루비 테스트 단계에서 수행해야합니다.
누구에게 의견이 있습니까?
이 정보를 추출하여 해독하려고합니다. 나중에이 정보를 비교하고 테스트 케이스의 결과를 판단해야합니다. 따라서 테스트 단계를 통해 mockRequest 변수를 읽어야합니다. – Amrit
테스트 단계에서 mockRequest에 액세스 할 수 있습니까? "서비스의 스크립트 섹션"을 이해하지 못해 죄송합니다. ?? : \ – Amrit
모의 작업을 만들 때 맨 아래에 스크립트 탭이 표시됩니다. 내 대답에서 제공 한 soapUI 링크를 확인하십시오. –