2014-02-18 2 views
3

RESTful 서비스를 만들었으며 SOAPUI 프로젝트에서 테스트 중입니다. 테스트 케이스에서 HTTP 응답 상태 코드를 groovy 스크립트로 확인하고 싶습니다.그루비의 HTTP 상태 코드 확인

나는 다음과 같은 사용하여 시도했다 :

def value = messageExchange.responseHeaders["#status#"] 

assert value==200 

를하지만 항상 오류를 제공하고 유효성을 검사하지 않습니다. (사용하고있는 테스트는 200 개의 상태 코드를 반환하지만 그루비를 올바르게 넣는 방법을 모르겠습니다.)

누구나 나를 안내 할 수 있습니까? 그루비에서 GET 작업을 수행하고 싶지 않습니다. soapui를 사용하여 GET을 별도로 수행하고 있으며 상태 코드를 테스트하고 싶습니다.

+0

비슷한 질문 이전 요청을받은 : http://stackoverflow.com/questions/6330449/how-to-add-assertion-for-http -204-content-in-rest http://stackoverflow.com/questions/16662959/how-to-test-the-response-content-type-using-soap-ui – kunal

+0

@kunal Thanks Kunal! 그것은 내 목적을 해결 :) – Amrit

답변

7

향후 사용을 위해 매우 유용 할 것입니다. 나는 약간의 검색을했고 이것에 관한 게시물을 SoapUI forum에 발견했다.

나는 HTTP 단계 (미안, 사용하기위한 휴식 서비스가 없음)로 테스트했고 제대로 작동합니다. 다행히 SoapUI는 대부분의 모든 요청을 동일한 방식으로 처리하므로 잘 작동합니다.

그리고 원시 코드 :

def groovyUtils = new com.eviware.soapui.support.GroovyUtils(context) 
def httpResponseHeaders = context.testCase.testSteps["testName"].testRequest.response.responseHeaders 
def httpStatus = httpResponseHeaders["#status#"] 
def httpStatusCode = (httpStatus =~ "[1-5]\\d\\d")[0] 

log.info("HTTP status code: " + httpStatusCode) 
+0

고마워. 이것은 나를 도왔다. Restfull 서비스와 동일한 방식으로 작동합니다. –