SoapUI 5.2.1 및 Groovy 사용. TestCase에 2 테스트 단계가 있습니다Groovy에서 switch with contains 사용 방법
1) SOAP 요청은 그루비 스크립트
목표는 정확한 단어가 응답에 있는지 찾는 것이 었습니다)
2 "를 만드는". 예를 들어, 응답에 "yes"라는 단어가 포함되어 있으면 스크립트에 메시지가 표시되어야합니다.
간단한 if-else로 달성했습니다. & .contains() 스위치에 대해 생각하고 나서 어떻게 이런 식으로 할 수 있을까요?
여기에서 오래된 해결책을 찾았습니다. Can switch use String.contains? 하지만 나에게는 적합하지 않습니다. 나는 항상 에 속한다.
나는 걸렸다. 목표는 스위치를 사용하여 응답에 정확한 단어가 있는지 찾아내는 것입니다. 앞으로는 많은 경우가 많기 때문입니다.
SOAP "create"는 응답을 가지고 있으며 스크립트는 정확하게 body를 추출하기 때문에이 응답의 Body 부분에 관심이 있습니다.
<env:Body>
<data ...>
<transactions>
<next_step>yes</next>
<message>that word</message>
</transactions>
</data>
</env:Body>
그리고 그루비 스크립트
response = context.expand('$create#Response#://env:Body}')
switch (response)
{
case ~/.*word.*/:
log.info "found"
break
case ~/.*damn.*/:
log.info "found that shouldn't be found"
break
default:
log.info "doesn't work"
}
response.toClass()
여기 java.lang.String
'contains'는'. * word. *'regex보다 잘 작동해야합니다. –
해결책이 도움이되는지 확인해 주시겠습니까? – Rao
해결책을 시도 할 기회가 있습니까? – Rao