2017-10-10 12 views
0

테스트 UI에 20 개의 테스트 케이스가 포함 된 REST API 프로젝트가 SOAP UI에 있습니다. 모든 테스트 단계에서 헤더 값과 sslkeystore을 추가하고 싶습니다. 여기 내 코드가있다.SOAP UI의 Groovy를 사용하여 나머지 API에서 HTTP 헤더 값 설정

import com.eviware.soapui.support.types.StringToStringMap 

testCaseList = testSuite.getTestCases() 
     testCaseList.each 
      { 
      testCase = testSuite.getTestCaseByName(it.key) 
      restTestSteps = testCase.getTestStepsOfType(com.eviware.soapui.impl.wsdl.teststeps.RestTestRequestStep)//only RestTestRequest steps 

      restTestSteps.each 
       { 
       it.getRestRequest().setHttpHeader("TEST2") 
       it.testRequest.setSslKeystore("**************") 

       } 
      } 

위의 코드 "TEST2"에는 모든 테스트 사례에 추가 할 헤더 값이 포함되어 있습니다. 나가 보내는 ws 안전 윤곽의 밑에 ws 안전 윤곽에있는 TEST2를 형성했다. 그러나 위의 코드에서 나는 다음과 같은 오류가 점점 오전 :

groovy.lang.MissingMethodException: No signature of method: com.eviware.soapui.impl.wsdl.teststeps.RestTestRequestStep.getRestRequest() is applicable for argument types:() values: [] Possible solutions: getTestRequest(), getHttpRequest()

아무도 내가 모든 테스트 단계에서 헤더 값을 추가 할 수 있습니다 제발 어떻게 좀 도와.

+0

'header'는 테스트 단계에는 추가 할 수 있지만 테스트 경우에는 추가 할 수없는 항목입니다. 그런데 위의 설명에서 'TEST2'가 어디에 있는지 (어떤 테스트 케이스에서) 있는지 확실하지 않습니다. 먼저 그 단계에 대한 응답을 얻으려고합니까? – Rao

+0

@Rao 실수로 테스트 단계 여야합니다 ... 내 게시물을 편집했습니다 ... 여기 TEST2는 모든 테스트 단계에 추가해야하는 사용자 이름 및 비밀번호와 같은 헤더 값을 설정하는 이름입니다. 수프에서 프로젝트> Ws- 보안 설정> 나가는 Ws- 보안 설정을 더블 클릭> 사용자 이름과 암호 같은 wss 항목을 추가 할 수있는 곳에서 + 기호를 클릭하십시오 ... 그래서 마침내이 두 값 (사용자 이름과 암호)을 추가하여 모든 테스트 단계는 테스트 스위트에서 수행됩니다. –

+0

ReadyAPI를 사용하고 있습니까? – Rao

답변

1

모든 테스트 단계에서 헤더 값과 sslkeystore를 추가하려면이 값을 Project에 Properties 또는 Custom Properties로 추가하십시오. 그런 다음 각 단계에서이 값을 지정하십시오. 당신은 그루비 스크립트로 이것을 할 의향이 있습니까?

+0

저에게 좋습니다. –