2017-01-11 4 views
-3

Я новичок в groovy-сценариях и просматриваю URL-адрес и печатаю его параметр.Как разобрать URL-адрес, чтобы получить параметры в groovy?

Этот URL является: https://www.google.com/?aaa=111&bbb=222&ccc=33&dd=1484088989_b23f248ac6e5d9a9b47475526bb92ee1

Как я могу принести дд параметра из URL?

Я ценю вашу помощь!

+0

Вы пробовали? Как вы получаете URL-адрес? Это исправлено? или динамический? вы получаете его как строку? Может быть, добавление более подробной информации о вашем случае поможет. Вы также можете посмотреть https://docs.oracle.com/javase/tutorial/networking/urls/urlInfo.html – Rao

+2

Возможный дубликат [получить параметры запроса из запроса urap soapui с использованием groovy] (http://stackoverflow.com/ Вопросы/39535861/get-query-params-from-request-url-soapui-using-groovy) – Rao

ответ

3

Вам необходимо добавить отличный скрипт.

def groovyUtils = new com.eviware.soapui.support.GroovyUtils(context); 
def testCase = context.testCase; 
def testStep = testCase.getTestStepByName("NAME_TESTStepRequest"); 
def endpoint =testStep.getPropertyValue('Endpoint'); 
log.info endpoint; 
def url = new URL(endpoint) 
//def url = new URL("https://www.google.com/?aaa=111&bbb=222&ccc=33&dd=1484088989_b23f248ac6e5d9a9b47475526bb92ee1") 

// get all query params as list 
def queryParams = url.query?.split('&') // safe operator for urls without query params 
// transform the params list to a Map spliting 
// each query param 
def mapParams = queryParams.collectEntries { param -> param.split('=').collect { URLDecoder.decode(it) }} 
// assert the expected values 
log.info mapParams['aaa'] 
//assert mapParams['aaa'] == '111' 
log.info mapParams['bbb'] 
//assert mapParams['bbb']== 'abc' 
log.info mapParams['dd'] 
//assert mapParams['dd']=='023423' 

Пожалуйста, проверьте это сообщение. Get query params from request url soapui using groovy

+0

Не будет ли дублировать вопрос? – Rao

+0

Я думаю, что это тот же вопрос, но мой английский очень плохо подходит для вашего вопроса. –