2017-10-30 1 views
0

REST 서비스를 테스트하기 위해 SoapUI를 사용하고 있습니다. v_manageCustomText 값이있는 경우 추가하고 싶습니다. 그런 다음 dispositionNames에 dispositionNames를 추가해야합니다.Groovy를 사용하여 ArrayList에 문자열을 하나 더 추가하는 방법은 무엇입니까?

def dispositionNames = ["ApproveFraud","ApproveNonFraud","System Error"] 
    log.info(dispositionNames.getClass().getSimpleName()) 
    log.info(context.testCase.getPropertyValue("v_manageCustomText")) 
    if(context.testCase.getPropertyValue("v_manageCustomDisposition") !="") 
    { 
    value = context.testCase.getPropertyValue("v_manageCustomDisposition") 
    dispositionNames = dispositionNames.add(value) 
    log.info dispositionNames 
    log.info(dispositionNames.getClass().getSimpleName()) 
    } 

다음 결과가 나타납니다. 그것은 내가 부울 타입이되는 값을 추가 한 후에 보입니다.

Mon Oct 30 15:48:43 IST 2017:INFO:CustomDisposition1509102136431 
Mon Oct 30 15:48:43 IST 2017:INFO:true 
Mon Oct 30 15:48:43 IST 2017:INFO:Boolean 
+2

이 줄이 잘못되었습니다. dispositionNames = dispositionNames.add (값) 추가하면 부울이 반환되고 할당을 제거하면됩니다. – adamcooney

+0

가리키는 주셔서 감사합니다. dispositionNames.add (value)를 사용하면 작동합니다. – ChanGan

답변

1

Groovy는 "약 유형화 된 언어"입니다. 즉, 변수 유형을 정의 할 필요가 없습니다. 반면에 다른 변수의 값을 지정하면 중간 실행 변수를 변경할 수 있습니다.

dispositionNames = dispositionNames.add(value) 

valuedispositionNames에 추가의 작업을 수행합니다 @adamcooney가 언급 한 바와 같이

http://groovy-lang.org/semantics.html

, 당신은 라인을 사용했다. 그런 다음 true을 반환하면 add 작업이 성공적임을 나타냅니다.

true은 var에 다시 할당되어 List에서 Boolean으로 값이 변경됩니다. 이런 이유로 당신은이 행동을 봅니다.

관련 문제